vk_enum_string_helper.h 374 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458
  1. // *** THIS FILE IS GENERATED - DO NOT EDIT ***
  2. // See helper_file_generator.py for modifications
  3. /***************************************************************************
  4. *
  5. * Copyright (c) 2015-2021 The Khronos Group Inc.
  6. * Copyright (c) 2015-2021 Valve Corporation
  7. * Copyright (c) 2015-2021 LunarG, Inc.
  8. * Copyright (c) 2015-2021 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 <[email protected]>
  23. * Author: Courtney Goeltzenleuchter <[email protected]>
  24. * Author: Tobin Ehlis <[email protected]>
  25. * Author: Chris Forbes <[email protected]>
  26. * Author: John Zulauf<[email protected]>
  27. *
  28. ****************************************************************************/
  29. #pragma once
  30. #ifdef _MSC_VER
  31. #pragma warning( disable : 4065 )
  32. #endif
  33. #include <string>
  34. #ifdef USE_VOLK
  35. #include <volk.h>
  36. #else
  37. #include <vulkan/vulkan.h>
  38. #endif
  39. static inline const char* string_VkResult(VkResult input_value)
  40. {
  41. switch (input_value)
  42. {
  43. case VK_ERROR_DEVICE_LOST:
  44. return "VK_ERROR_DEVICE_LOST";
  45. case VK_ERROR_EXTENSION_NOT_PRESENT:
  46. return "VK_ERROR_EXTENSION_NOT_PRESENT";
  47. case VK_ERROR_FEATURE_NOT_PRESENT:
  48. return "VK_ERROR_FEATURE_NOT_PRESENT";
  49. case VK_ERROR_FORMAT_NOT_SUPPORTED:
  50. return "VK_ERROR_FORMAT_NOT_SUPPORTED";
  51. case VK_ERROR_FRAGMENTATION:
  52. return "VK_ERROR_FRAGMENTATION";
  53. case VK_ERROR_FRAGMENTED_POOL:
  54. return "VK_ERROR_FRAGMENTED_POOL";
  55. case VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT:
  56. return "VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT";
  57. case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR:
  58. return "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR";
  59. case VK_ERROR_INCOMPATIBLE_DRIVER:
  60. return "VK_ERROR_INCOMPATIBLE_DRIVER";
  61. case VK_ERROR_INITIALIZATION_FAILED:
  62. return "VK_ERROR_INITIALIZATION_FAILED";
  63. case VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT:
  64. return "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT";
  65. case VK_ERROR_INVALID_EXTERNAL_HANDLE:
  66. return "VK_ERROR_INVALID_EXTERNAL_HANDLE";
  67. case VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS:
  68. return "VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS";
  69. case VK_ERROR_INVALID_SHADER_NV:
  70. return "VK_ERROR_INVALID_SHADER_NV";
  71. case VK_ERROR_LAYER_NOT_PRESENT:
  72. return "VK_ERROR_LAYER_NOT_PRESENT";
  73. case VK_ERROR_MEMORY_MAP_FAILED:
  74. return "VK_ERROR_MEMORY_MAP_FAILED";
  75. case VK_ERROR_NATIVE_WINDOW_IN_USE_KHR:
  76. return "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR";
  77. case VK_ERROR_NOT_PERMITTED_EXT:
  78. return "VK_ERROR_NOT_PERMITTED_EXT";
  79. case VK_ERROR_OUT_OF_DATE_KHR:
  80. return "VK_ERROR_OUT_OF_DATE_KHR";
  81. case VK_ERROR_OUT_OF_DEVICE_MEMORY:
  82. return "VK_ERROR_OUT_OF_DEVICE_MEMORY";
  83. case VK_ERROR_OUT_OF_HOST_MEMORY:
  84. return "VK_ERROR_OUT_OF_HOST_MEMORY";
  85. case VK_ERROR_OUT_OF_POOL_MEMORY:
  86. return "VK_ERROR_OUT_OF_POOL_MEMORY";
  87. case VK_ERROR_SURFACE_LOST_KHR:
  88. return "VK_ERROR_SURFACE_LOST_KHR";
  89. case VK_ERROR_TOO_MANY_OBJECTS:
  90. return "VK_ERROR_TOO_MANY_OBJECTS";
  91. case VK_ERROR_UNKNOWN:
  92. return "VK_ERROR_UNKNOWN";
  93. case VK_ERROR_VALIDATION_FAILED_EXT:
  94. return "VK_ERROR_VALIDATION_FAILED_EXT";
  95. case VK_EVENT_RESET:
  96. return "VK_EVENT_RESET";
  97. case VK_EVENT_SET:
  98. return "VK_EVENT_SET";
  99. case VK_INCOMPLETE:
  100. return "VK_INCOMPLETE";
  101. case VK_NOT_READY:
  102. return "VK_NOT_READY";
  103. case VK_OPERATION_DEFERRED_KHR:
  104. return "VK_OPERATION_DEFERRED_KHR";
  105. case VK_OPERATION_NOT_DEFERRED_KHR:
  106. return "VK_OPERATION_NOT_DEFERRED_KHR";
  107. case VK_PIPELINE_COMPILE_REQUIRED_EXT:
  108. return "VK_PIPELINE_COMPILE_REQUIRED_EXT";
  109. case VK_SUBOPTIMAL_KHR:
  110. return "VK_SUBOPTIMAL_KHR";
  111. case VK_SUCCESS:
  112. return "VK_SUCCESS";
  113. case VK_THREAD_DONE_KHR:
  114. return "VK_THREAD_DONE_KHR";
  115. case VK_THREAD_IDLE_KHR:
  116. return "VK_THREAD_IDLE_KHR";
  117. case VK_TIMEOUT:
  118. return "VK_TIMEOUT";
  119. default:
  120. return "Unhandled VkResult";
  121. }
  122. }
  123. static inline const char* string_VkStructureType(VkStructureType input_value)
  124. {
  125. switch (input_value)
  126. {
  127. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR:
  128. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR";
  129. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR:
  130. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR";
  131. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR:
  132. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR";
  133. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV:
  134. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV";
  135. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR:
  136. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR";
  137. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR:
  138. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR";
  139. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR:
  140. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR";
  141. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR:
  142. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR";
  143. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
  144. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV";
  145. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR:
  146. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR";
  147. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV:
  148. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV";
  149. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV:
  150. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV";
  151. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
  152. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV";
  153. case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR:
  154. return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR";
  155. case VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR:
  156. return "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR";
  157. case VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR:
  158. return "VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR";
  159. case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID:
  160. return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID";
  161. case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID:
  162. return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID";
  163. case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID:
  164. return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID";
  165. case VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR:
  166. return "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR";
  167. case VK_STRUCTURE_TYPE_APPLICATION_INFO:
  168. return "VK_STRUCTURE_TYPE_APPLICATION_INFO";
  169. case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2:
  170. return "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2";
  171. case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT:
  172. return "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT";
  173. case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2:
  174. return "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2";
  175. case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT:
  176. return "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT";
  177. case VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV:
  178. return "VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV";
  179. case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO:
  180. return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO";
  181. case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO:
  182. return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO";
  183. case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO:
  184. return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO";
  185. case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO:
  186. return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO";
  187. case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR:
  188. return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR";
  189. case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO:
  190. return "VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO";
  191. case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO:
  192. return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO";
  193. case VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR:
  194. return "VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR";
  195. case VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR:
  196. return "VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR";
  197. case VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO:
  198. return "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO";
  199. case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT:
  200. return "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT";
  201. case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO:
  202. return "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO";
  203. case VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR:
  204. return "VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR";
  205. case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER:
  206. return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER";
  207. case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR:
  208. return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR";
  209. case VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2:
  210. return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2";
  211. case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO:
  212. return "VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO";
  213. case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO:
  214. return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO";
  215. case VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT:
  216. return "VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT";
  217. case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV:
  218. return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV";
  219. case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV:
  220. return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV";
  221. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO:
  222. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO";
  223. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO:
  224. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO";
  225. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT:
  226. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT";
  227. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO:
  228. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO";
  229. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM:
  230. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM";
  231. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
  232. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV";
  233. case VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR:
  234. return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR";
  235. case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO:
  236. return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO";
  237. case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO:
  238. return "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO";
  239. case VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT:
  240. return "VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT";
  241. case VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV:
  242. return "VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV";
  243. case VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR:
  244. return "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR";
  245. case VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR:
  246. return "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR";
  247. case VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR:
  248. return "VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR";
  249. case VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR:
  250. return "VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR";
  251. case VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM:
  252. return "VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM";
  253. case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET:
  254. return "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET";
  255. case VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR:
  256. return "VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR";
  257. case VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR:
  258. return "VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR";
  259. case VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR:
  260. return "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR";
  261. case VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX:
  262. return "VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX";
  263. case VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX:
  264. return "VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX";
  265. case VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX:
  266. return "VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX";
  267. case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR:
  268. return "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR";
  269. case VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT:
  270. return "VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT";
  271. case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT:
  272. return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT";
  273. case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT:
  274. return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT";
  275. case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT:
  276. return "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT";
  277. case VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT:
  278. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT";
  279. case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT:
  280. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT";
  281. case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:
  282. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT";
  283. case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT:
  284. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT";
  285. case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT:
  286. return "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT";
  287. case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV:
  288. return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV";
  289. case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV:
  290. return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV";
  291. case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV:
  292. return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV";
  293. case VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR:
  294. return "VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR";
  295. case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO:
  296. return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO";
  297. case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT:
  298. return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT";
  299. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO:
  300. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO";
  301. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO:
  302. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO";
  303. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO:
  304. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO";
  305. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT:
  306. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT";
  307. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO:
  308. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO";
  309. case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT:
  310. return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT";
  311. case VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO:
  312. return "VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO";
  313. case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO:
  314. return "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO";
  315. case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT:
  316. return "VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT";
  317. case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV:
  318. return "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV";
  319. case VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT:
  320. return "VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT";
  321. case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO:
  322. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO";
  323. case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO:
  324. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO";
  325. case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO:
  326. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO";
  327. case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR:
  328. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR";
  329. case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR:
  330. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR";
  331. case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO:
  332. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO";
  333. case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO:
  334. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO";
  335. case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR:
  336. return "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR";
  337. case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO:
  338. return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO";
  339. case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
  340. return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD";
  341. case VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT:
  342. return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT";
  343. case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT:
  344. return "VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT";
  345. case VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO:
  346. return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO";
  347. case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT:
  348. return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT";
  349. case VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2:
  350. return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2";
  351. case VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT:
  352. return "VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT";
  353. case VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT:
  354. return "VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT";
  355. case VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR:
  356. return "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR";
  357. case VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR:
  358. return "VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR";
  359. case VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD:
  360. return "VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD";
  361. case VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR:
  362. return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR";
  363. case VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR:
  364. return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR";
  365. case VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR:
  366. return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR";
  367. case VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT:
  368. return "VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT";
  369. case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:
  370. return "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR";
  371. case VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR:
  372. return "VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR";
  373. case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR:
  374. return "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR";
  375. case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT:
  376. return "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT";
  377. case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO:
  378. return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO";
  379. case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO:
  380. return "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO";
  381. case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR:
  382. return "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR";
  383. case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO:
  384. return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO";
  385. case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV:
  386. return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV";
  387. case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
  388. return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
  389. case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV:
  390. return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV";
  391. case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO:
  392. return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO";
  393. case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
  394. return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
  395. case VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES:
  396. return "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES";
  397. case VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES:
  398. return "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES";
  399. case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID:
  400. return "VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID";
  401. case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES:
  402. return "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES";
  403. case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:
  404. return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO";
  405. case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO:
  406. return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO";
  407. case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV:
  408. return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV";
  409. case VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES:
  410. return "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES";
  411. case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO:
  412. return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO";
  413. case VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR:
  414. return "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR";
  415. case VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR:
  416. return "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR";
  417. case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT:
  418. return "VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT";
  419. case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2:
  420. return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2";
  421. case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
  422. return "VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR";
  423. case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO:
  424. return "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO";
  425. case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO:
  426. return "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO";
  427. case VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO:
  428. return "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO";
  429. case VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV:
  430. return "VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV";
  431. case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV:
  432. return "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV";
  433. case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV:
  434. return "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV";
  435. case VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV:
  436. return "VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV";
  437. case VK_STRUCTURE_TYPE_GEOMETRY_NV:
  438. return "VK_STRUCTURE_TYPE_GEOMETRY_NV";
  439. case VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV:
  440. return "VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV";
  441. case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO:
  442. return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO";
  443. case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV:
  444. return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV";
  445. case VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV:
  446. return "VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV";
  447. case VK_STRUCTURE_TYPE_HDR_METADATA_EXT:
  448. return "VK_STRUCTURE_TYPE_HDR_METADATA_EXT";
  449. case VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT:
  450. return "VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT";
  451. case VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA:
  452. return "VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA";
  453. case VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR:
  454. return "VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR";
  455. case VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR:
  456. return "VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR";
  457. case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO:
  458. return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO";
  459. case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT:
  460. return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT";
  461. case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT:
  462. return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT";
  463. case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT:
  464. return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT";
  465. case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO:
  466. return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO";
  467. case VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2:
  468. return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2";
  469. case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER:
  470. return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER";
  471. case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR:
  472. return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR";
  473. case VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2:
  474. return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2";
  475. case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:
  476. return "VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO";
  477. case VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR:
  478. return "VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR";
  479. case VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2:
  480. return "VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2";
  481. case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO:
  482. return "VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO";
  483. case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR:
  484. return "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR";
  485. case VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX:
  486. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX";
  487. case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT:
  488. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT";
  489. case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO:
  490. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO";
  491. case VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX:
  492. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX";
  493. case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO:
  494. return "VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO";
  495. case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID:
  496. return "VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID";
  497. case VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR:
  498. return "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR";
  499. case VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR:
  500. return "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR";
  501. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR:
  502. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR";
  503. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:
  504. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT";
  505. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
  506. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
  507. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV:
  508. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV";
  509. case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
  510. return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA";
  511. case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR:
  512. return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR";
  513. case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
  514. return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
  515. case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA:
  516. return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA";
  517. case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV:
  518. return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV";
  519. case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV:
  520. return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV";
  521. case VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL:
  522. return "VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL";
  523. case VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO:
  524. return "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO";
  525. case VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK:
  526. return "VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK";
  527. case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO:
  528. return "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO";
  529. case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO:
  530. return "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO";
  531. case VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK:
  532. return "VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK";
  533. case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE:
  534. return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE";
  535. case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO:
  536. return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO";
  537. case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO:
  538. return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO";
  539. case VK_STRUCTURE_TYPE_MEMORY_BARRIER:
  540. return "VK_STRUCTURE_TYPE_MEMORY_BARRIER";
  541. case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
  542. return "VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR";
  543. case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:
  544. return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO";
  545. case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:
  546. return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS";
  547. case VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR:
  548. return "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR";
  549. case VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID:
  550. return "VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID";
  551. case VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR:
  552. return "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR";
  553. case VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV:
  554. return "VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV";
  555. case VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR:
  556. return "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR";
  557. case VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA:
  558. return "VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA";
  559. case VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT:
  560. return "VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT";
  561. case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO:
  562. return "VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO";
  563. case VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT:
  564. return "VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT";
  565. case VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2:
  566. return "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2";
  567. case VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR:
  568. return "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR";
  569. case VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA:
  570. return "VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA";
  571. case VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT:
  572. return "VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT";
  573. case VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT:
  574. return "VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT";
  575. case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
  576. return "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE";
  577. case VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL:
  578. return "VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL";
  579. case VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR:
  580. return "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR";
  581. case VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR:
  582. return "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR";
  583. case VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL:
  584. return "VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL";
  585. case VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL:
  586. return "VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL";
  587. case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR:
  588. return "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR";
  589. case VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL:
  590. return "VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL";
  591. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:
  592. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES";
  593. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT:
  594. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT";
  595. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES:
  596. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES";
  597. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR:
  598. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR";
  599. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR:
  600. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR";
  601. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT:
  602. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT";
  603. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT:
  604. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT";
  605. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:
  606. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT";
  607. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES:
  608. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES";
  609. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT:
  610. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT";
  611. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD:
  612. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD";
  613. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
  614. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT";
  615. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV:
  616. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV";
  617. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT:
  618. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT";
  619. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:
  620. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT";
  621. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV:
  622. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV";
  623. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV:
  624. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV";
  625. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV:
  626. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV";
  627. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV:
  628. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV";
  629. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT:
  630. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT";
  631. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT:
  632. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT";
  633. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV:
  634. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV";
  635. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT:
  636. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT";
  637. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES:
  638. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES";
  639. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES:
  640. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES";
  641. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES:
  642. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES";
  643. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV:
  644. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV";
  645. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV:
  646. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV";
  647. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT:
  648. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT";
  649. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV:
  650. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV";
  651. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT:
  652. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT";
  653. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES:
  654. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES";
  655. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
  656. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT";
  657. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV:
  658. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV";
  659. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
  660. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT";
  661. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT:
  662. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT";
  663. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO:
  664. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO";
  665. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO:
  666. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO";
  667. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO:
  668. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO";
  669. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT:
  670. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT";
  671. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
  672. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV";
  673. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO:
  674. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO";
  675. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:
  676. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2";
  677. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES:
  678. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES";
  679. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
  680. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT";
  681. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT:
  682. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT";
  683. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT:
  684. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT";
  685. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT:
  686. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT";
  687. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV:
  688. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV";
  689. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT:
  690. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT";
  691. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV:
  692. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV";
  693. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV:
  694. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV";
  695. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR:
  696. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR";
  697. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR:
  698. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR";
  699. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR:
  700. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR";
  701. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
  702. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT";
  703. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES:
  704. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES";
  705. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES:
  706. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES";
  707. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES:
  708. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES";
  709. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES:
  710. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES";
  711. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT:
  712. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT";
  713. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2:
  714. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2";
  715. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT:
  716. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT";
  717. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT:
  718. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT";
  719. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT:
  720. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT";
  721. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
  722. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV";
  723. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
  724. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT";
  725. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT:
  726. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT";
  727. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
  728. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI";
  729. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT:
  730. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT";
  731. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:
  732. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT";
  733. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES:
  734. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES";
  735. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT:
  736. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT";
  737. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT:
  738. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT";
  739. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2:
  740. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2";
  741. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV:
  742. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV";
  743. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV:
  744. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV";
  745. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES:
  746. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES";
  747. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX:
  748. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX";
  749. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:
  750. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES";
  751. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
  752. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT";
  753. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
  754. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT";
  755. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
  756. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE";
  757. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT:
  758. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT";
  759. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR:
  760. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR";
  761. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR:
  762. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR";
  763. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT:
  764. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT";
  765. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
  766. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR";
  767. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:
  768. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES";
  769. #ifdef VK_ENABLE_BETA_EXTENSIONS
  770. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR:
  771. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR";
  772. #endif // VK_ENABLE_BETA_EXTENSIONS
  773. #ifdef VK_ENABLE_BETA_EXTENSIONS
  774. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR:
  775. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR";
  776. #endif // VK_ENABLE_BETA_EXTENSIONS
  777. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
  778. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR";
  779. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
  780. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR";
  781. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
  782. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT";
  783. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT:
  784. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT";
  785. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2:
  786. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2";
  787. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES:
  788. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES";
  789. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:
  790. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES";
  791. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
  792. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT";
  793. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
  794. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT";
  795. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR:
  796. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR";
  797. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR:
  798. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR";
  799. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
  800. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV";
  801. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR:
  802. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR";
  803. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR:
  804. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR";
  805. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV:
  806. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV";
  807. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV:
  808. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV";
  809. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT:
  810. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT";
  811. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT:
  812. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT";
  813. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES:
  814. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES";
  815. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES:
  816. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES";
  817. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT:
  818. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT";
  819. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES:
  820. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES";
  821. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES:
  822. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES";
  823. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
  824. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT";
  825. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT:
  826. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT";
  827. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES:
  828. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES";
  829. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR:
  830. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR";
  831. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD:
  832. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD";
  833. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD:
  834. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD";
  835. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
  836. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT";
  837. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES:
  838. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES";
  839. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES:
  840. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES";
  841. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:
  842. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT";
  843. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV:
  844. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV";
  845. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
  846. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR";
  847. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
  848. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR";
  849. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL:
  850. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL";
  851. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV:
  852. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV";
  853. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV:
  854. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV";
  855. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES:
  856. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES";
  857. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
  858. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR";
  859. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR:
  860. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR";
  861. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV:
  862. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV";
  863. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV:
  864. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV";
  865. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2:
  866. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2";
  867. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES:
  868. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES";
  869. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT:
  870. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT";
  871. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT:
  872. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT";
  873. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
  874. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI";
  875. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
  876. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI";
  877. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR:
  878. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR";
  879. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
  880. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR";
  881. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
  882. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT";
  883. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT:
  884. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT";
  885. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT:
  886. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT";
  887. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES:
  888. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES";
  889. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES:
  890. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES";
  891. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT:
  892. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT";
  893. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT:
  894. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT";
  895. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT:
  896. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT";
  897. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES:
  898. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES";
  899. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES:
  900. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES";
  901. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT:
  902. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT";
  903. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:
  904. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT";
  905. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
  906. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT";
  907. #ifdef VK_ENABLE_BETA_EXTENSIONS
  908. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR:
  909. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR";
  910. #endif // VK_ENABLE_BETA_EXTENSIONS
  911. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:
  912. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES";
  913. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES:
  914. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES";
  915. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES:
  916. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES";
  917. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES:
  918. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES";
  919. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES:
  920. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES";
  921. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
  922. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR";
  923. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
  924. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT";
  925. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT:
  926. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT";
  927. case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
  928. return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR";
  929. case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO:
  930. return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO";
  931. case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:
  932. return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT";
  933. case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO:
  934. return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO";
  935. case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
  936. return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT";
  937. case VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD:
  938. return "VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD";
  939. case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV:
  940. return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV";
  941. case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV:
  942. return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV";
  943. case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV:
  944. return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV";
  945. case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT:
  946. return "VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT";
  947. case VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO:
  948. return "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO";
  949. case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT:
  950. return "VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT";
  951. case VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO:
  952. return "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO";
  953. case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR:
  954. return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR";
  955. case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR:
  956. return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR";
  957. case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR:
  958. return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR";
  959. case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR:
  960. return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR";
  961. case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV:
  962. return "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV";
  963. case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR:
  964. return "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR";
  965. case VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR:
  966. return "VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR";
  967. case VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO:
  968. return "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO";
  969. case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO:
  970. return "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO";
  971. case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR:
  972. return "VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR";
  973. case VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO:
  974. return "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO";
  975. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT:
  976. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT";
  977. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT:
  978. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT";
  979. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT:
  980. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT";
  981. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
  982. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT";
  983. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO:
  984. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO";
  985. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD:
  986. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD";
  987. case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT:
  988. return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT";
  989. case VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV:
  990. return "VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV";
  991. case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT:
  992. return "VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT";
  993. case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO:
  994. return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO";
  995. case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT:
  996. return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT";
  997. case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO:
  998. return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO";
  999. case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO:
  1000. return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO";
  1001. case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT:
  1002. return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT";
  1003. case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO:
  1004. return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO";
  1005. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV:
  1006. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV";
  1007. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV:
  1008. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV";
  1009. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV:
  1010. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV";
  1011. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO:
  1012. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO";
  1013. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV:
  1014. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV";
  1015. case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV:
  1016. return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV";
  1017. case VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP:
  1018. return "VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP";
  1019. case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
  1020. return "VK_STRUCTURE_TYPE_PRESENT_ID_KHR";
  1021. case VK_STRUCTURE_TYPE_PRESENT_INFO_KHR:
  1022. return "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR";
  1023. case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:
  1024. return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR";
  1025. case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE:
  1026. return "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE";
  1027. case VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT:
  1028. return "VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT";
  1029. case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO:
  1030. return "VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO";
  1031. case VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO:
  1032. return "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO";
  1033. case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR:
  1034. return "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR";
  1035. case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL:
  1036. return "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL";
  1037. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
  1038. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV";
  1039. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV:
  1040. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV";
  1041. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
  1042. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT";
  1043. case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2:
  1044. return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2";
  1045. case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR:
  1046. return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR";
  1047. case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV:
  1048. return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV";
  1049. case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR:
  1050. return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR";
  1051. case VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR:
  1052. return "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR";
  1053. case VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV:
  1054. return "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV";
  1055. case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO:
  1056. return "VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO";
  1057. case VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO:
  1058. return "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO";
  1059. case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO:
  1060. return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO";
  1061. case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2:
  1062. return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2";
  1063. case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT:
  1064. return "VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT";
  1065. case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO:
  1066. return "VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO";
  1067. case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO:
  1068. return "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO";
  1069. case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT:
  1070. return "VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT";
  1071. case VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM:
  1072. return "VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM";
  1073. case VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR:
  1074. return "VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR";
  1075. case VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO:
  1076. return "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO";
  1077. case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT:
  1078. return "VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT";
  1079. case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO:
  1080. return "VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO";
  1081. case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO:
  1082. return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO";
  1083. case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:
  1084. return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES";
  1085. case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO:
  1086. return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO";
  1087. case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:
  1088. return "VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT";
  1089. case VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX:
  1090. return "VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX";
  1091. case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO:
  1092. return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO";
  1093. case VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR:
  1094. return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR";
  1095. case VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR:
  1096. return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR";
  1097. case VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA:
  1098. return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA";
  1099. case VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO:
  1100. return "VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO";
  1101. case VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR:
  1102. return "VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR";
  1103. case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO:
  1104. return "VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO";
  1105. case VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO:
  1106. return "VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO";
  1107. case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO:
  1108. return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO";
  1109. case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
  1110. return "VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT";
  1111. case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:
  1112. return "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR";
  1113. case VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2:
  1114. return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2";
  1115. case VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2:
  1116. return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2";
  1117. case VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP:
  1118. return "VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP";
  1119. case VK_STRUCTURE_TYPE_SUBMIT_INFO:
  1120. return "VK_STRUCTURE_TYPE_SUBMIT_INFO";
  1121. case VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR:
  1122. return "VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR";
  1123. case VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO:
  1124. return "VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO";
  1125. case VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2:
  1126. return "VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2";
  1127. case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2:
  1128. return "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2";
  1129. case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE:
  1130. return "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE";
  1131. case VK_STRUCTURE_TYPE_SUBPASS_END_INFO:
  1132. return "VK_STRUCTURE_TYPE_SUBPASS_END_INFO";
  1133. case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
  1134. return "VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI";
  1135. case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT:
  1136. return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT";
  1137. case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR:
  1138. return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR";
  1139. case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT:
  1140. return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT";
  1141. case VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR:
  1142. return "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR";
  1143. case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
  1144. return "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT";
  1145. case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT:
  1146. return "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT";
  1147. case VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR:
  1148. return "VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR";
  1149. case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT:
  1150. return "VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT";
  1151. case VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR:
  1152. return "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR";
  1153. case VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD:
  1154. return "VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD";
  1155. case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
  1156. return "VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD";
  1157. case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO:
  1158. return "VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO";
  1159. case VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT:
  1160. return "VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT";
  1161. case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT:
  1162. return "VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT";
  1163. case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT:
  1164. return "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT";
  1165. case VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT:
  1166. return "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT";
  1167. case VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT:
  1168. return "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT";
  1169. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1170. case VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR:
  1171. return "VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR";
  1172. #endif // VK_ENABLE_BETA_EXTENSIONS
  1173. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1174. case VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR:
  1175. return "VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR";
  1176. #endif // VK_ENABLE_BETA_EXTENSIONS
  1177. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1178. case VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR:
  1179. return "VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR";
  1180. #endif // VK_ENABLE_BETA_EXTENSIONS
  1181. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1182. case VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR:
  1183. return "VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR";
  1184. #endif // VK_ENABLE_BETA_EXTENSIONS
  1185. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1186. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
  1187. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT";
  1188. #endif // VK_ENABLE_BETA_EXTENSIONS
  1189. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1190. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
  1191. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT";
  1192. #endif // VK_ENABLE_BETA_EXTENSIONS
  1193. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1194. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
  1195. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT";
  1196. #endif // VK_ENABLE_BETA_EXTENSIONS
  1197. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1198. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
  1199. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT";
  1200. #endif // VK_ENABLE_BETA_EXTENSIONS
  1201. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1202. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
  1203. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT";
  1204. #endif // VK_ENABLE_BETA_EXTENSIONS
  1205. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1206. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
  1207. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT";
  1208. #endif // VK_ENABLE_BETA_EXTENSIONS
  1209. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1210. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
  1211. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT";
  1212. #endif // VK_ENABLE_BETA_EXTENSIONS
  1213. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1214. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
  1215. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT";
  1216. #endif // VK_ENABLE_BETA_EXTENSIONS
  1217. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1218. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
  1219. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT";
  1220. #endif // VK_ENABLE_BETA_EXTENSIONS
  1221. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1222. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
  1223. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT";
  1224. #endif // VK_ENABLE_BETA_EXTENSIONS
  1225. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1226. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
  1227. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT";
  1228. #endif // VK_ENABLE_BETA_EXTENSIONS
  1229. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1230. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
  1231. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT";
  1232. #endif // VK_ENABLE_BETA_EXTENSIONS
  1233. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1234. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
  1235. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT";
  1236. #endif // VK_ENABLE_BETA_EXTENSIONS
  1237. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1238. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
  1239. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT";
  1240. #endif // VK_ENABLE_BETA_EXTENSIONS
  1241. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1242. case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
  1243. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT";
  1244. #endif // VK_ENABLE_BETA_EXTENSIONS
  1245. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1246. case VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR:
  1247. return "VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR";
  1248. #endif // VK_ENABLE_BETA_EXTENSIONS
  1249. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1250. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
  1251. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT";
  1252. #endif // VK_ENABLE_BETA_EXTENSIONS
  1253. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1254. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT:
  1255. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT";
  1256. #endif // VK_ENABLE_BETA_EXTENSIONS
  1257. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1258. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
  1259. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT";
  1260. #endif // VK_ENABLE_BETA_EXTENSIONS
  1261. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1262. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT:
  1263. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT";
  1264. #endif // VK_ENABLE_BETA_EXTENSIONS
  1265. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1266. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
  1267. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT";
  1268. #endif // VK_ENABLE_BETA_EXTENSIONS
  1269. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1270. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
  1271. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT";
  1272. #endif // VK_ENABLE_BETA_EXTENSIONS
  1273. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1274. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
  1275. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT";
  1276. #endif // VK_ENABLE_BETA_EXTENSIONS
  1277. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1278. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
  1279. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT";
  1280. #endif // VK_ENABLE_BETA_EXTENSIONS
  1281. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1282. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
  1283. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT";
  1284. #endif // VK_ENABLE_BETA_EXTENSIONS
  1285. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1286. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR:
  1287. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR";
  1288. #endif // VK_ENABLE_BETA_EXTENSIONS
  1289. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1290. case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
  1291. return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR";
  1292. #endif // VK_ENABLE_BETA_EXTENSIONS
  1293. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1294. case VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR:
  1295. return "VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR";
  1296. #endif // VK_ENABLE_BETA_EXTENSIONS
  1297. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1298. case VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR:
  1299. return "VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR";
  1300. #endif // VK_ENABLE_BETA_EXTENSIONS
  1301. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1302. case VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR:
  1303. return "VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR";
  1304. #endif // VK_ENABLE_BETA_EXTENSIONS
  1305. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1306. case VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR:
  1307. return "VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR";
  1308. #endif // VK_ENABLE_BETA_EXTENSIONS
  1309. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1310. case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
  1311. return "VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR";
  1312. #endif // VK_ENABLE_BETA_EXTENSIONS
  1313. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1314. case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
  1315. return "VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR";
  1316. #endif // VK_ENABLE_BETA_EXTENSIONS
  1317. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1318. case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
  1319. return "VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR";
  1320. #endif // VK_ENABLE_BETA_EXTENSIONS
  1321. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1322. case VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR:
  1323. return "VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR";
  1324. #endif // VK_ENABLE_BETA_EXTENSIONS
  1325. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1326. case VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR:
  1327. return "VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR";
  1328. #endif // VK_ENABLE_BETA_EXTENSIONS
  1329. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1330. case VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR:
  1331. return "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR";
  1332. #endif // VK_ENABLE_BETA_EXTENSIONS
  1333. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1334. case VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR:
  1335. return "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR";
  1336. #endif // VK_ENABLE_BETA_EXTENSIONS
  1337. case VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN:
  1338. return "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN";
  1339. case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR:
  1340. return "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR";
  1341. case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR:
  1342. return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR";
  1343. case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV:
  1344. return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV";
  1345. case VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR:
  1346. return "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR";
  1347. case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET:
  1348. return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET";
  1349. case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
  1350. return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR";
  1351. case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV:
  1352. return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV";
  1353. case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT:
  1354. return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT";
  1355. case VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR:
  1356. return "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR";
  1357. case VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR:
  1358. return "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR";
  1359. default:
  1360. return "Unhandled VkStructureType";
  1361. }
  1362. }
  1363. static inline const char* string_VkAccessFlagBits(VkAccessFlagBits input_value)
  1364. {
  1365. switch (input_value)
  1366. {
  1367. case VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR:
  1368. return "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR";
  1369. case VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
  1370. return "VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
  1371. case VK_ACCESS_COLOR_ATTACHMENT_READ_BIT:
  1372. return "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT";
  1373. case VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
  1374. return "VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
  1375. case VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT:
  1376. return "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT";
  1377. case VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV:
  1378. return "VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV";
  1379. case VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV:
  1380. return "VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV";
  1381. case VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT:
  1382. return "VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT";
  1383. case VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT:
  1384. return "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT";
  1385. case VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT:
  1386. return "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT";
  1387. case VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
  1388. return "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
  1389. case VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
  1390. return "VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
  1391. case VK_ACCESS_HOST_READ_BIT:
  1392. return "VK_ACCESS_HOST_READ_BIT";
  1393. case VK_ACCESS_HOST_WRITE_BIT:
  1394. return "VK_ACCESS_HOST_WRITE_BIT";
  1395. case VK_ACCESS_INDEX_READ_BIT:
  1396. return "VK_ACCESS_INDEX_READ_BIT";
  1397. case VK_ACCESS_INDIRECT_COMMAND_READ_BIT:
  1398. return "VK_ACCESS_INDIRECT_COMMAND_READ_BIT";
  1399. case VK_ACCESS_INPUT_ATTACHMENT_READ_BIT:
  1400. return "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT";
  1401. case VK_ACCESS_MEMORY_READ_BIT:
  1402. return "VK_ACCESS_MEMORY_READ_BIT";
  1403. case VK_ACCESS_MEMORY_WRITE_BIT:
  1404. return "VK_ACCESS_MEMORY_WRITE_BIT";
  1405. case VK_ACCESS_NONE_KHR:
  1406. return "VK_ACCESS_NONE_KHR";
  1407. case VK_ACCESS_SHADER_READ_BIT:
  1408. return "VK_ACCESS_SHADER_READ_BIT";
  1409. case VK_ACCESS_SHADER_WRITE_BIT:
  1410. return "VK_ACCESS_SHADER_WRITE_BIT";
  1411. case VK_ACCESS_TRANSFER_READ_BIT:
  1412. return "VK_ACCESS_TRANSFER_READ_BIT";
  1413. case VK_ACCESS_TRANSFER_WRITE_BIT:
  1414. return "VK_ACCESS_TRANSFER_WRITE_BIT";
  1415. case VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
  1416. return "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
  1417. case VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
  1418. return "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
  1419. case VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
  1420. return "VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
  1421. case VK_ACCESS_UNIFORM_READ_BIT:
  1422. return "VK_ACCESS_UNIFORM_READ_BIT";
  1423. case VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT:
  1424. return "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT";
  1425. default:
  1426. return "Unhandled VkAccessFlagBits";
  1427. }
  1428. }
  1429. static inline std::string string_VkAccessFlags(VkAccessFlags input_value)
  1430. {
  1431. std::string ret;
  1432. int index = 0;
  1433. while(input_value) {
  1434. if (input_value & 1) {
  1435. if( !ret.empty()) ret.append("|");
  1436. ret.append(string_VkAccessFlagBits(static_cast<VkAccessFlagBits>(1U << index)));
  1437. }
  1438. ++index;
  1439. input_value >>= 1;
  1440. }
  1441. if( ret.empty()) ret.append(string_VkAccessFlagBits(static_cast<VkAccessFlagBits>(0)));
  1442. return ret;
  1443. }
  1444. static inline const char* string_VkImageLayout(VkImageLayout input_value)
  1445. {
  1446. switch (input_value)
  1447. {
  1448. case VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR:
  1449. return "VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR";
  1450. case VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL:
  1451. return "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL";
  1452. case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL:
  1453. return "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL";
  1454. case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL:
  1455. return "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL";
  1456. case VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL:
  1457. return "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL";
  1458. case VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL:
  1459. return "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL";
  1460. case VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL:
  1461. return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL";
  1462. case VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL:
  1463. return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL";
  1464. case VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT:
  1465. return "VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT";
  1466. case VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR:
  1467. return "VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR";
  1468. case VK_IMAGE_LAYOUT_GENERAL:
  1469. return "VK_IMAGE_LAYOUT_GENERAL";
  1470. case VK_IMAGE_LAYOUT_PREINITIALIZED:
  1471. return "VK_IMAGE_LAYOUT_PREINITIALIZED";
  1472. case VK_IMAGE_LAYOUT_PRESENT_SRC_KHR:
  1473. return "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR";
  1474. case VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR:
  1475. return "VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR";
  1476. case VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL:
  1477. return "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL";
  1478. case VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR:
  1479. return "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR";
  1480. case VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL:
  1481. return "VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL";
  1482. case VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL:
  1483. return "VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL";
  1484. case VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL:
  1485. return "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL";
  1486. case VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL:
  1487. return "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL";
  1488. case VK_IMAGE_LAYOUT_UNDEFINED:
  1489. return "VK_IMAGE_LAYOUT_UNDEFINED";
  1490. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1491. case VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR:
  1492. return "VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR";
  1493. #endif // VK_ENABLE_BETA_EXTENSIONS
  1494. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1495. case VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR:
  1496. return "VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR";
  1497. #endif // VK_ENABLE_BETA_EXTENSIONS
  1498. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1499. case VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR:
  1500. return "VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR";
  1501. #endif // VK_ENABLE_BETA_EXTENSIONS
  1502. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1503. case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR:
  1504. return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR";
  1505. #endif // VK_ENABLE_BETA_EXTENSIONS
  1506. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1507. case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR:
  1508. return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR";
  1509. #endif // VK_ENABLE_BETA_EXTENSIONS
  1510. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1511. case VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR:
  1512. return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR";
  1513. #endif // VK_ENABLE_BETA_EXTENSIONS
  1514. default:
  1515. return "Unhandled VkImageLayout";
  1516. }
  1517. }
  1518. static inline const char* string_VkImageAspectFlagBits(VkImageAspectFlagBits input_value)
  1519. {
  1520. switch (input_value)
  1521. {
  1522. case VK_IMAGE_ASPECT_COLOR_BIT:
  1523. return "VK_IMAGE_ASPECT_COLOR_BIT";
  1524. case VK_IMAGE_ASPECT_DEPTH_BIT:
  1525. return "VK_IMAGE_ASPECT_DEPTH_BIT";
  1526. case VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT:
  1527. return "VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT";
  1528. case VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT:
  1529. return "VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT";
  1530. case VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT:
  1531. return "VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT";
  1532. case VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT:
  1533. return "VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT";
  1534. case VK_IMAGE_ASPECT_METADATA_BIT:
  1535. return "VK_IMAGE_ASPECT_METADATA_BIT";
  1536. case VK_IMAGE_ASPECT_PLANE_0_BIT:
  1537. return "VK_IMAGE_ASPECT_PLANE_0_BIT";
  1538. case VK_IMAGE_ASPECT_PLANE_1_BIT:
  1539. return "VK_IMAGE_ASPECT_PLANE_1_BIT";
  1540. case VK_IMAGE_ASPECT_PLANE_2_BIT:
  1541. return "VK_IMAGE_ASPECT_PLANE_2_BIT";
  1542. case VK_IMAGE_ASPECT_STENCIL_BIT:
  1543. return "VK_IMAGE_ASPECT_STENCIL_BIT";
  1544. default:
  1545. return "Unhandled VkImageAspectFlagBits";
  1546. }
  1547. }
  1548. static inline std::string string_VkImageAspectFlags(VkImageAspectFlags input_value)
  1549. {
  1550. std::string ret;
  1551. int index = 0;
  1552. while(input_value) {
  1553. if (input_value & 1) {
  1554. if( !ret.empty()) ret.append("|");
  1555. ret.append(string_VkImageAspectFlagBits(static_cast<VkImageAspectFlagBits>(1U << index)));
  1556. }
  1557. ++index;
  1558. input_value >>= 1;
  1559. }
  1560. if( ret.empty()) ret.append(string_VkImageAspectFlagBits(static_cast<VkImageAspectFlagBits>(0)));
  1561. return ret;
  1562. }
  1563. static inline const char* string_VkObjectType(VkObjectType input_value)
  1564. {
  1565. switch (input_value)
  1566. {
  1567. case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR:
  1568. return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR";
  1569. case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV:
  1570. return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV";
  1571. case VK_OBJECT_TYPE_BUFFER:
  1572. return "VK_OBJECT_TYPE_BUFFER";
  1573. case VK_OBJECT_TYPE_BUFFER_VIEW:
  1574. return "VK_OBJECT_TYPE_BUFFER_VIEW";
  1575. case VK_OBJECT_TYPE_COMMAND_BUFFER:
  1576. return "VK_OBJECT_TYPE_COMMAND_BUFFER";
  1577. case VK_OBJECT_TYPE_COMMAND_POOL:
  1578. return "VK_OBJECT_TYPE_COMMAND_POOL";
  1579. case VK_OBJECT_TYPE_CU_FUNCTION_NVX:
  1580. return "VK_OBJECT_TYPE_CU_FUNCTION_NVX";
  1581. case VK_OBJECT_TYPE_CU_MODULE_NVX:
  1582. return "VK_OBJECT_TYPE_CU_MODULE_NVX";
  1583. case VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT:
  1584. return "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT";
  1585. case VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT:
  1586. return "VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT";
  1587. case VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR:
  1588. return "VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR";
  1589. case VK_OBJECT_TYPE_DESCRIPTOR_POOL:
  1590. return "VK_OBJECT_TYPE_DESCRIPTOR_POOL";
  1591. case VK_OBJECT_TYPE_DESCRIPTOR_SET:
  1592. return "VK_OBJECT_TYPE_DESCRIPTOR_SET";
  1593. case VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT:
  1594. return "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT";
  1595. case VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE:
  1596. return "VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE";
  1597. case VK_OBJECT_TYPE_DEVICE:
  1598. return "VK_OBJECT_TYPE_DEVICE";
  1599. case VK_OBJECT_TYPE_DEVICE_MEMORY:
  1600. return "VK_OBJECT_TYPE_DEVICE_MEMORY";
  1601. case VK_OBJECT_TYPE_DISPLAY_KHR:
  1602. return "VK_OBJECT_TYPE_DISPLAY_KHR";
  1603. case VK_OBJECT_TYPE_DISPLAY_MODE_KHR:
  1604. return "VK_OBJECT_TYPE_DISPLAY_MODE_KHR";
  1605. case VK_OBJECT_TYPE_EVENT:
  1606. return "VK_OBJECT_TYPE_EVENT";
  1607. case VK_OBJECT_TYPE_FENCE:
  1608. return "VK_OBJECT_TYPE_FENCE";
  1609. case VK_OBJECT_TYPE_FRAMEBUFFER:
  1610. return "VK_OBJECT_TYPE_FRAMEBUFFER";
  1611. case VK_OBJECT_TYPE_IMAGE:
  1612. return "VK_OBJECT_TYPE_IMAGE";
  1613. case VK_OBJECT_TYPE_IMAGE_VIEW:
  1614. return "VK_OBJECT_TYPE_IMAGE_VIEW";
  1615. case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV:
  1616. return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV";
  1617. case VK_OBJECT_TYPE_INSTANCE:
  1618. return "VK_OBJECT_TYPE_INSTANCE";
  1619. case VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL:
  1620. return "VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL";
  1621. case VK_OBJECT_TYPE_PHYSICAL_DEVICE:
  1622. return "VK_OBJECT_TYPE_PHYSICAL_DEVICE";
  1623. case VK_OBJECT_TYPE_PIPELINE:
  1624. return "VK_OBJECT_TYPE_PIPELINE";
  1625. case VK_OBJECT_TYPE_PIPELINE_CACHE:
  1626. return "VK_OBJECT_TYPE_PIPELINE_CACHE";
  1627. case VK_OBJECT_TYPE_PIPELINE_LAYOUT:
  1628. return "VK_OBJECT_TYPE_PIPELINE_LAYOUT";
  1629. case VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT:
  1630. return "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT";
  1631. case VK_OBJECT_TYPE_QUERY_POOL:
  1632. return "VK_OBJECT_TYPE_QUERY_POOL";
  1633. case VK_OBJECT_TYPE_QUEUE:
  1634. return "VK_OBJECT_TYPE_QUEUE";
  1635. case VK_OBJECT_TYPE_RENDER_PASS:
  1636. return "VK_OBJECT_TYPE_RENDER_PASS";
  1637. case VK_OBJECT_TYPE_SAMPLER:
  1638. return "VK_OBJECT_TYPE_SAMPLER";
  1639. case VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION:
  1640. return "VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION";
  1641. case VK_OBJECT_TYPE_SEMAPHORE:
  1642. return "VK_OBJECT_TYPE_SEMAPHORE";
  1643. case VK_OBJECT_TYPE_SHADER_MODULE:
  1644. return "VK_OBJECT_TYPE_SHADER_MODULE";
  1645. case VK_OBJECT_TYPE_SURFACE_KHR:
  1646. return "VK_OBJECT_TYPE_SURFACE_KHR";
  1647. case VK_OBJECT_TYPE_SWAPCHAIN_KHR:
  1648. return "VK_OBJECT_TYPE_SWAPCHAIN_KHR";
  1649. case VK_OBJECT_TYPE_UNKNOWN:
  1650. return "VK_OBJECT_TYPE_UNKNOWN";
  1651. case VK_OBJECT_TYPE_VALIDATION_CACHE_EXT:
  1652. return "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT";
  1653. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1654. case VK_OBJECT_TYPE_VIDEO_SESSION_KHR:
  1655. return "VK_OBJECT_TYPE_VIDEO_SESSION_KHR";
  1656. #endif // VK_ENABLE_BETA_EXTENSIONS
  1657. #ifdef VK_ENABLE_BETA_EXTENSIONS
  1658. case VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR:
  1659. return "VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR";
  1660. #endif // VK_ENABLE_BETA_EXTENSIONS
  1661. default:
  1662. return "Unhandled VkObjectType";
  1663. }
  1664. }
  1665. static inline const char* string_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion input_value)
  1666. {
  1667. switch (input_value)
  1668. {
  1669. case VK_PIPELINE_CACHE_HEADER_VERSION_ONE:
  1670. return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE";
  1671. default:
  1672. return "Unhandled VkPipelineCacheHeaderVersion";
  1673. }
  1674. }
  1675. static inline const char* string_VkVendorId(VkVendorId input_value)
  1676. {
  1677. switch (input_value)
  1678. {
  1679. case VK_VENDOR_ID_CODEPLAY:
  1680. return "VK_VENDOR_ID_CODEPLAY";
  1681. case VK_VENDOR_ID_KAZAN:
  1682. return "VK_VENDOR_ID_KAZAN";
  1683. case VK_VENDOR_ID_MESA:
  1684. return "VK_VENDOR_ID_MESA";
  1685. case VK_VENDOR_ID_POCL:
  1686. return "VK_VENDOR_ID_POCL";
  1687. case VK_VENDOR_ID_VIV:
  1688. return "VK_VENDOR_ID_VIV";
  1689. case VK_VENDOR_ID_VSI:
  1690. return "VK_VENDOR_ID_VSI";
  1691. default:
  1692. return "Unhandled VkVendorId";
  1693. }
  1694. }
  1695. static inline const char* string_VkSystemAllocationScope(VkSystemAllocationScope input_value)
  1696. {
  1697. switch (input_value)
  1698. {
  1699. case VK_SYSTEM_ALLOCATION_SCOPE_CACHE:
  1700. return "VK_SYSTEM_ALLOCATION_SCOPE_CACHE";
  1701. case VK_SYSTEM_ALLOCATION_SCOPE_COMMAND:
  1702. return "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND";
  1703. case VK_SYSTEM_ALLOCATION_SCOPE_DEVICE:
  1704. return "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE";
  1705. case VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE:
  1706. return "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE";
  1707. case VK_SYSTEM_ALLOCATION_SCOPE_OBJECT:
  1708. return "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT";
  1709. default:
  1710. return "Unhandled VkSystemAllocationScope";
  1711. }
  1712. }
  1713. static inline const char* string_VkInternalAllocationType(VkInternalAllocationType input_value)
  1714. {
  1715. switch (input_value)
  1716. {
  1717. case VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE:
  1718. return "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE";
  1719. default:
  1720. return "Unhandled VkInternalAllocationType";
  1721. }
  1722. }
  1723. static inline const char* string_VkFormat(VkFormat input_value)
  1724. {
  1725. switch (input_value)
  1726. {
  1727. case VK_FORMAT_A1R5G5B5_UNORM_PACK16:
  1728. return "VK_FORMAT_A1R5G5B5_UNORM_PACK16";
  1729. case VK_FORMAT_A2B10G10R10_SINT_PACK32:
  1730. return "VK_FORMAT_A2B10G10R10_SINT_PACK32";
  1731. case VK_FORMAT_A2B10G10R10_SNORM_PACK32:
  1732. return "VK_FORMAT_A2B10G10R10_SNORM_PACK32";
  1733. case VK_FORMAT_A2B10G10R10_SSCALED_PACK32:
  1734. return "VK_FORMAT_A2B10G10R10_SSCALED_PACK32";
  1735. case VK_FORMAT_A2B10G10R10_UINT_PACK32:
  1736. return "VK_FORMAT_A2B10G10R10_UINT_PACK32";
  1737. case VK_FORMAT_A2B10G10R10_UNORM_PACK32:
  1738. return "VK_FORMAT_A2B10G10R10_UNORM_PACK32";
  1739. case VK_FORMAT_A2B10G10R10_USCALED_PACK32:
  1740. return "VK_FORMAT_A2B10G10R10_USCALED_PACK32";
  1741. case VK_FORMAT_A2R10G10B10_SINT_PACK32:
  1742. return "VK_FORMAT_A2R10G10B10_SINT_PACK32";
  1743. case VK_FORMAT_A2R10G10B10_SNORM_PACK32:
  1744. return "VK_FORMAT_A2R10G10B10_SNORM_PACK32";
  1745. case VK_FORMAT_A2R10G10B10_SSCALED_PACK32:
  1746. return "VK_FORMAT_A2R10G10B10_SSCALED_PACK32";
  1747. case VK_FORMAT_A2R10G10B10_UINT_PACK32:
  1748. return "VK_FORMAT_A2R10G10B10_UINT_PACK32";
  1749. case VK_FORMAT_A2R10G10B10_UNORM_PACK32:
  1750. return "VK_FORMAT_A2R10G10B10_UNORM_PACK32";
  1751. case VK_FORMAT_A2R10G10B10_USCALED_PACK32:
  1752. return "VK_FORMAT_A2R10G10B10_USCALED_PACK32";
  1753. case VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT:
  1754. return "VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT";
  1755. case VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT:
  1756. return "VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT";
  1757. case VK_FORMAT_A8B8G8R8_SINT_PACK32:
  1758. return "VK_FORMAT_A8B8G8R8_SINT_PACK32";
  1759. case VK_FORMAT_A8B8G8R8_SNORM_PACK32:
  1760. return "VK_FORMAT_A8B8G8R8_SNORM_PACK32";
  1761. case VK_FORMAT_A8B8G8R8_SRGB_PACK32:
  1762. return "VK_FORMAT_A8B8G8R8_SRGB_PACK32";
  1763. case VK_FORMAT_A8B8G8R8_SSCALED_PACK32:
  1764. return "VK_FORMAT_A8B8G8R8_SSCALED_PACK32";
  1765. case VK_FORMAT_A8B8G8R8_UINT_PACK32:
  1766. return "VK_FORMAT_A8B8G8R8_UINT_PACK32";
  1767. case VK_FORMAT_A8B8G8R8_UNORM_PACK32:
  1768. return "VK_FORMAT_A8B8G8R8_UNORM_PACK32";
  1769. case VK_FORMAT_A8B8G8R8_USCALED_PACK32:
  1770. return "VK_FORMAT_A8B8G8R8_USCALED_PACK32";
  1771. case VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT:
  1772. return "VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT";
  1773. case VK_FORMAT_ASTC_10x10_SRGB_BLOCK:
  1774. return "VK_FORMAT_ASTC_10x10_SRGB_BLOCK";
  1775. case VK_FORMAT_ASTC_10x10_UNORM_BLOCK:
  1776. return "VK_FORMAT_ASTC_10x10_UNORM_BLOCK";
  1777. case VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT:
  1778. return "VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT";
  1779. case VK_FORMAT_ASTC_10x5_SRGB_BLOCK:
  1780. return "VK_FORMAT_ASTC_10x5_SRGB_BLOCK";
  1781. case VK_FORMAT_ASTC_10x5_UNORM_BLOCK:
  1782. return "VK_FORMAT_ASTC_10x5_UNORM_BLOCK";
  1783. case VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT:
  1784. return "VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT";
  1785. case VK_FORMAT_ASTC_10x6_SRGB_BLOCK:
  1786. return "VK_FORMAT_ASTC_10x6_SRGB_BLOCK";
  1787. case VK_FORMAT_ASTC_10x6_UNORM_BLOCK:
  1788. return "VK_FORMAT_ASTC_10x6_UNORM_BLOCK";
  1789. case VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT:
  1790. return "VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT";
  1791. case VK_FORMAT_ASTC_10x8_SRGB_BLOCK:
  1792. return "VK_FORMAT_ASTC_10x8_SRGB_BLOCK";
  1793. case VK_FORMAT_ASTC_10x8_UNORM_BLOCK:
  1794. return "VK_FORMAT_ASTC_10x8_UNORM_BLOCK";
  1795. case VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT:
  1796. return "VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT";
  1797. case VK_FORMAT_ASTC_12x10_SRGB_BLOCK:
  1798. return "VK_FORMAT_ASTC_12x10_SRGB_BLOCK";
  1799. case VK_FORMAT_ASTC_12x10_UNORM_BLOCK:
  1800. return "VK_FORMAT_ASTC_12x10_UNORM_BLOCK";
  1801. case VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT:
  1802. return "VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT";
  1803. case VK_FORMAT_ASTC_12x12_SRGB_BLOCK:
  1804. return "VK_FORMAT_ASTC_12x12_SRGB_BLOCK";
  1805. case VK_FORMAT_ASTC_12x12_UNORM_BLOCK:
  1806. return "VK_FORMAT_ASTC_12x12_UNORM_BLOCK";
  1807. case VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT:
  1808. return "VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT";
  1809. case VK_FORMAT_ASTC_4x4_SRGB_BLOCK:
  1810. return "VK_FORMAT_ASTC_4x4_SRGB_BLOCK";
  1811. case VK_FORMAT_ASTC_4x4_UNORM_BLOCK:
  1812. return "VK_FORMAT_ASTC_4x4_UNORM_BLOCK";
  1813. case VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT:
  1814. return "VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT";
  1815. case VK_FORMAT_ASTC_5x4_SRGB_BLOCK:
  1816. return "VK_FORMAT_ASTC_5x4_SRGB_BLOCK";
  1817. case VK_FORMAT_ASTC_5x4_UNORM_BLOCK:
  1818. return "VK_FORMAT_ASTC_5x4_UNORM_BLOCK";
  1819. case VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT:
  1820. return "VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT";
  1821. case VK_FORMAT_ASTC_5x5_SRGB_BLOCK:
  1822. return "VK_FORMAT_ASTC_5x5_SRGB_BLOCK";
  1823. case VK_FORMAT_ASTC_5x5_UNORM_BLOCK:
  1824. return "VK_FORMAT_ASTC_5x5_UNORM_BLOCK";
  1825. case VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT:
  1826. return "VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT";
  1827. case VK_FORMAT_ASTC_6x5_SRGB_BLOCK:
  1828. return "VK_FORMAT_ASTC_6x5_SRGB_BLOCK";
  1829. case VK_FORMAT_ASTC_6x5_UNORM_BLOCK:
  1830. return "VK_FORMAT_ASTC_6x5_UNORM_BLOCK";
  1831. case VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT:
  1832. return "VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT";
  1833. case VK_FORMAT_ASTC_6x6_SRGB_BLOCK:
  1834. return "VK_FORMAT_ASTC_6x6_SRGB_BLOCK";
  1835. case VK_FORMAT_ASTC_6x6_UNORM_BLOCK:
  1836. return "VK_FORMAT_ASTC_6x6_UNORM_BLOCK";
  1837. case VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT:
  1838. return "VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT";
  1839. case VK_FORMAT_ASTC_8x5_SRGB_BLOCK:
  1840. return "VK_FORMAT_ASTC_8x5_SRGB_BLOCK";
  1841. case VK_FORMAT_ASTC_8x5_UNORM_BLOCK:
  1842. return "VK_FORMAT_ASTC_8x5_UNORM_BLOCK";
  1843. case VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT:
  1844. return "VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT";
  1845. case VK_FORMAT_ASTC_8x6_SRGB_BLOCK:
  1846. return "VK_FORMAT_ASTC_8x6_SRGB_BLOCK";
  1847. case VK_FORMAT_ASTC_8x6_UNORM_BLOCK:
  1848. return "VK_FORMAT_ASTC_8x6_UNORM_BLOCK";
  1849. case VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT:
  1850. return "VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT";
  1851. case VK_FORMAT_ASTC_8x8_SRGB_BLOCK:
  1852. return "VK_FORMAT_ASTC_8x8_SRGB_BLOCK";
  1853. case VK_FORMAT_ASTC_8x8_UNORM_BLOCK:
  1854. return "VK_FORMAT_ASTC_8x8_UNORM_BLOCK";
  1855. case VK_FORMAT_B10G11R11_UFLOAT_PACK32:
  1856. return "VK_FORMAT_B10G11R11_UFLOAT_PACK32";
  1857. case VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16:
  1858. return "VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16";
  1859. case VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16:
  1860. return "VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16";
  1861. case VK_FORMAT_B16G16R16G16_422_UNORM:
  1862. return "VK_FORMAT_B16G16R16G16_422_UNORM";
  1863. case VK_FORMAT_B4G4R4A4_UNORM_PACK16:
  1864. return "VK_FORMAT_B4G4R4A4_UNORM_PACK16";
  1865. case VK_FORMAT_B5G5R5A1_UNORM_PACK16:
  1866. return "VK_FORMAT_B5G5R5A1_UNORM_PACK16";
  1867. case VK_FORMAT_B5G6R5_UNORM_PACK16:
  1868. return "VK_FORMAT_B5G6R5_UNORM_PACK16";
  1869. case VK_FORMAT_B8G8R8A8_SINT:
  1870. return "VK_FORMAT_B8G8R8A8_SINT";
  1871. case VK_FORMAT_B8G8R8A8_SNORM:
  1872. return "VK_FORMAT_B8G8R8A8_SNORM";
  1873. case VK_FORMAT_B8G8R8A8_SRGB:
  1874. return "VK_FORMAT_B8G8R8A8_SRGB";
  1875. case VK_FORMAT_B8G8R8A8_SSCALED:
  1876. return "VK_FORMAT_B8G8R8A8_SSCALED";
  1877. case VK_FORMAT_B8G8R8A8_UINT:
  1878. return "VK_FORMAT_B8G8R8A8_UINT";
  1879. case VK_FORMAT_B8G8R8A8_UNORM:
  1880. return "VK_FORMAT_B8G8R8A8_UNORM";
  1881. case VK_FORMAT_B8G8R8A8_USCALED:
  1882. return "VK_FORMAT_B8G8R8A8_USCALED";
  1883. case VK_FORMAT_B8G8R8G8_422_UNORM:
  1884. return "VK_FORMAT_B8G8R8G8_422_UNORM";
  1885. case VK_FORMAT_B8G8R8_SINT:
  1886. return "VK_FORMAT_B8G8R8_SINT";
  1887. case VK_FORMAT_B8G8R8_SNORM:
  1888. return "VK_FORMAT_B8G8R8_SNORM";
  1889. case VK_FORMAT_B8G8R8_SRGB:
  1890. return "VK_FORMAT_B8G8R8_SRGB";
  1891. case VK_FORMAT_B8G8R8_SSCALED:
  1892. return "VK_FORMAT_B8G8R8_SSCALED";
  1893. case VK_FORMAT_B8G8R8_UINT:
  1894. return "VK_FORMAT_B8G8R8_UINT";
  1895. case VK_FORMAT_B8G8R8_UNORM:
  1896. return "VK_FORMAT_B8G8R8_UNORM";
  1897. case VK_FORMAT_B8G8R8_USCALED:
  1898. return "VK_FORMAT_B8G8R8_USCALED";
  1899. case VK_FORMAT_BC1_RGBA_SRGB_BLOCK:
  1900. return "VK_FORMAT_BC1_RGBA_SRGB_BLOCK";
  1901. case VK_FORMAT_BC1_RGBA_UNORM_BLOCK:
  1902. return "VK_FORMAT_BC1_RGBA_UNORM_BLOCK";
  1903. case VK_FORMAT_BC1_RGB_SRGB_BLOCK:
  1904. return "VK_FORMAT_BC1_RGB_SRGB_BLOCK";
  1905. case VK_FORMAT_BC1_RGB_UNORM_BLOCK:
  1906. return "VK_FORMAT_BC1_RGB_UNORM_BLOCK";
  1907. case VK_FORMAT_BC2_SRGB_BLOCK:
  1908. return "VK_FORMAT_BC2_SRGB_BLOCK";
  1909. case VK_FORMAT_BC2_UNORM_BLOCK:
  1910. return "VK_FORMAT_BC2_UNORM_BLOCK";
  1911. case VK_FORMAT_BC3_SRGB_BLOCK:
  1912. return "VK_FORMAT_BC3_SRGB_BLOCK";
  1913. case VK_FORMAT_BC3_UNORM_BLOCK:
  1914. return "VK_FORMAT_BC3_UNORM_BLOCK";
  1915. case VK_FORMAT_BC4_SNORM_BLOCK:
  1916. return "VK_FORMAT_BC4_SNORM_BLOCK";
  1917. case VK_FORMAT_BC4_UNORM_BLOCK:
  1918. return "VK_FORMAT_BC4_UNORM_BLOCK";
  1919. case VK_FORMAT_BC5_SNORM_BLOCK:
  1920. return "VK_FORMAT_BC5_SNORM_BLOCK";
  1921. case VK_FORMAT_BC5_UNORM_BLOCK:
  1922. return "VK_FORMAT_BC5_UNORM_BLOCK";
  1923. case VK_FORMAT_BC6H_SFLOAT_BLOCK:
  1924. return "VK_FORMAT_BC6H_SFLOAT_BLOCK";
  1925. case VK_FORMAT_BC6H_UFLOAT_BLOCK:
  1926. return "VK_FORMAT_BC6H_UFLOAT_BLOCK";
  1927. case VK_FORMAT_BC7_SRGB_BLOCK:
  1928. return "VK_FORMAT_BC7_SRGB_BLOCK";
  1929. case VK_FORMAT_BC7_UNORM_BLOCK:
  1930. return "VK_FORMAT_BC7_UNORM_BLOCK";
  1931. case VK_FORMAT_D16_UNORM:
  1932. return "VK_FORMAT_D16_UNORM";
  1933. case VK_FORMAT_D16_UNORM_S8_UINT:
  1934. return "VK_FORMAT_D16_UNORM_S8_UINT";
  1935. case VK_FORMAT_D24_UNORM_S8_UINT:
  1936. return "VK_FORMAT_D24_UNORM_S8_UINT";
  1937. case VK_FORMAT_D32_SFLOAT:
  1938. return "VK_FORMAT_D32_SFLOAT";
  1939. case VK_FORMAT_D32_SFLOAT_S8_UINT:
  1940. return "VK_FORMAT_D32_SFLOAT_S8_UINT";
  1941. case VK_FORMAT_E5B9G9R9_UFLOAT_PACK32:
  1942. return "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32";
  1943. case VK_FORMAT_EAC_R11G11_SNORM_BLOCK:
  1944. return "VK_FORMAT_EAC_R11G11_SNORM_BLOCK";
  1945. case VK_FORMAT_EAC_R11G11_UNORM_BLOCK:
  1946. return "VK_FORMAT_EAC_R11G11_UNORM_BLOCK";
  1947. case VK_FORMAT_EAC_R11_SNORM_BLOCK:
  1948. return "VK_FORMAT_EAC_R11_SNORM_BLOCK";
  1949. case VK_FORMAT_EAC_R11_UNORM_BLOCK:
  1950. return "VK_FORMAT_EAC_R11_UNORM_BLOCK";
  1951. case VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK:
  1952. return "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK";
  1953. case VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK:
  1954. return "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK";
  1955. case VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK:
  1956. return "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK";
  1957. case VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK:
  1958. return "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK";
  1959. case VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK:
  1960. return "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK";
  1961. case VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK:
  1962. return "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK";
  1963. case VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16:
  1964. return "VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16";
  1965. case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16:
  1966. return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16";
  1967. case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16:
  1968. return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16";
  1969. case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT:
  1970. return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT";
  1971. case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16:
  1972. return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16";
  1973. case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16:
  1974. return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16";
  1975. case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16:
  1976. return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16";
  1977. case VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16:
  1978. return "VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16";
  1979. case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16:
  1980. return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16";
  1981. case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16:
  1982. return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16";
  1983. case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT:
  1984. return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT";
  1985. case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16:
  1986. return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16";
  1987. case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16:
  1988. return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16";
  1989. case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16:
  1990. return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16";
  1991. case VK_FORMAT_G16B16G16R16_422_UNORM:
  1992. return "VK_FORMAT_G16B16G16R16_422_UNORM";
  1993. case VK_FORMAT_G16_B16R16_2PLANE_420_UNORM:
  1994. return "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM";
  1995. case VK_FORMAT_G16_B16R16_2PLANE_422_UNORM:
  1996. return "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM";
  1997. case VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT:
  1998. return "VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT";
  1999. case VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM:
  2000. return "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM";
  2001. case VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM:
  2002. return "VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM";
  2003. case VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM:
  2004. return "VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM";
  2005. case VK_FORMAT_G8B8G8R8_422_UNORM:
  2006. return "VK_FORMAT_G8B8G8R8_422_UNORM";
  2007. case VK_FORMAT_G8_B8R8_2PLANE_420_UNORM:
  2008. return "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM";
  2009. case VK_FORMAT_G8_B8R8_2PLANE_422_UNORM:
  2010. return "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM";
  2011. case VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT:
  2012. return "VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT";
  2013. case VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM:
  2014. return "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM";
  2015. case VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM:
  2016. return "VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM";
  2017. case VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM:
  2018. return "VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM";
  2019. case VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG:
  2020. return "VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG";
  2021. case VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG:
  2022. return "VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG";
  2023. case VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG:
  2024. return "VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG";
  2025. case VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG:
  2026. return "VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG";
  2027. case VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG:
  2028. return "VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG";
  2029. case VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG:
  2030. return "VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG";
  2031. case VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG:
  2032. return "VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG";
  2033. case VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG:
  2034. return "VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG";
  2035. case VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16:
  2036. return "VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16";
  2037. case VK_FORMAT_R10X6G10X6_UNORM_2PACK16:
  2038. return "VK_FORMAT_R10X6G10X6_UNORM_2PACK16";
  2039. case VK_FORMAT_R10X6_UNORM_PACK16:
  2040. return "VK_FORMAT_R10X6_UNORM_PACK16";
  2041. case VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16:
  2042. return "VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16";
  2043. case VK_FORMAT_R12X4G12X4_UNORM_2PACK16:
  2044. return "VK_FORMAT_R12X4G12X4_UNORM_2PACK16";
  2045. case VK_FORMAT_R12X4_UNORM_PACK16:
  2046. return "VK_FORMAT_R12X4_UNORM_PACK16";
  2047. case VK_FORMAT_R16G16B16A16_SFLOAT:
  2048. return "VK_FORMAT_R16G16B16A16_SFLOAT";
  2049. case VK_FORMAT_R16G16B16A16_SINT:
  2050. return "VK_FORMAT_R16G16B16A16_SINT";
  2051. case VK_FORMAT_R16G16B16A16_SNORM:
  2052. return "VK_FORMAT_R16G16B16A16_SNORM";
  2053. case VK_FORMAT_R16G16B16A16_SSCALED:
  2054. return "VK_FORMAT_R16G16B16A16_SSCALED";
  2055. case VK_FORMAT_R16G16B16A16_UINT:
  2056. return "VK_FORMAT_R16G16B16A16_UINT";
  2057. case VK_FORMAT_R16G16B16A16_UNORM:
  2058. return "VK_FORMAT_R16G16B16A16_UNORM";
  2059. case VK_FORMAT_R16G16B16A16_USCALED:
  2060. return "VK_FORMAT_R16G16B16A16_USCALED";
  2061. case VK_FORMAT_R16G16B16_SFLOAT:
  2062. return "VK_FORMAT_R16G16B16_SFLOAT";
  2063. case VK_FORMAT_R16G16B16_SINT:
  2064. return "VK_FORMAT_R16G16B16_SINT";
  2065. case VK_FORMAT_R16G16B16_SNORM:
  2066. return "VK_FORMAT_R16G16B16_SNORM";
  2067. case VK_FORMAT_R16G16B16_SSCALED:
  2068. return "VK_FORMAT_R16G16B16_SSCALED";
  2069. case VK_FORMAT_R16G16B16_UINT:
  2070. return "VK_FORMAT_R16G16B16_UINT";
  2071. case VK_FORMAT_R16G16B16_UNORM:
  2072. return "VK_FORMAT_R16G16B16_UNORM";
  2073. case VK_FORMAT_R16G16B16_USCALED:
  2074. return "VK_FORMAT_R16G16B16_USCALED";
  2075. case VK_FORMAT_R16G16_SFLOAT:
  2076. return "VK_FORMAT_R16G16_SFLOAT";
  2077. case VK_FORMAT_R16G16_SINT:
  2078. return "VK_FORMAT_R16G16_SINT";
  2079. case VK_FORMAT_R16G16_SNORM:
  2080. return "VK_FORMAT_R16G16_SNORM";
  2081. case VK_FORMAT_R16G16_SSCALED:
  2082. return "VK_FORMAT_R16G16_SSCALED";
  2083. case VK_FORMAT_R16G16_UINT:
  2084. return "VK_FORMAT_R16G16_UINT";
  2085. case VK_FORMAT_R16G16_UNORM:
  2086. return "VK_FORMAT_R16G16_UNORM";
  2087. case VK_FORMAT_R16G16_USCALED:
  2088. return "VK_FORMAT_R16G16_USCALED";
  2089. case VK_FORMAT_R16_SFLOAT:
  2090. return "VK_FORMAT_R16_SFLOAT";
  2091. case VK_FORMAT_R16_SINT:
  2092. return "VK_FORMAT_R16_SINT";
  2093. case VK_FORMAT_R16_SNORM:
  2094. return "VK_FORMAT_R16_SNORM";
  2095. case VK_FORMAT_R16_SSCALED:
  2096. return "VK_FORMAT_R16_SSCALED";
  2097. case VK_FORMAT_R16_UINT:
  2098. return "VK_FORMAT_R16_UINT";
  2099. case VK_FORMAT_R16_UNORM:
  2100. return "VK_FORMAT_R16_UNORM";
  2101. case VK_FORMAT_R16_USCALED:
  2102. return "VK_FORMAT_R16_USCALED";
  2103. case VK_FORMAT_R32G32B32A32_SFLOAT:
  2104. return "VK_FORMAT_R32G32B32A32_SFLOAT";
  2105. case VK_FORMAT_R32G32B32A32_SINT:
  2106. return "VK_FORMAT_R32G32B32A32_SINT";
  2107. case VK_FORMAT_R32G32B32A32_UINT:
  2108. return "VK_FORMAT_R32G32B32A32_UINT";
  2109. case VK_FORMAT_R32G32B32_SFLOAT:
  2110. return "VK_FORMAT_R32G32B32_SFLOAT";
  2111. case VK_FORMAT_R32G32B32_SINT:
  2112. return "VK_FORMAT_R32G32B32_SINT";
  2113. case VK_FORMAT_R32G32B32_UINT:
  2114. return "VK_FORMAT_R32G32B32_UINT";
  2115. case VK_FORMAT_R32G32_SFLOAT:
  2116. return "VK_FORMAT_R32G32_SFLOAT";
  2117. case VK_FORMAT_R32G32_SINT:
  2118. return "VK_FORMAT_R32G32_SINT";
  2119. case VK_FORMAT_R32G32_UINT:
  2120. return "VK_FORMAT_R32G32_UINT";
  2121. case VK_FORMAT_R32_SFLOAT:
  2122. return "VK_FORMAT_R32_SFLOAT";
  2123. case VK_FORMAT_R32_SINT:
  2124. return "VK_FORMAT_R32_SINT";
  2125. case VK_FORMAT_R32_UINT:
  2126. return "VK_FORMAT_R32_UINT";
  2127. case VK_FORMAT_R4G4B4A4_UNORM_PACK16:
  2128. return "VK_FORMAT_R4G4B4A4_UNORM_PACK16";
  2129. case VK_FORMAT_R4G4_UNORM_PACK8:
  2130. return "VK_FORMAT_R4G4_UNORM_PACK8";
  2131. case VK_FORMAT_R5G5B5A1_UNORM_PACK16:
  2132. return "VK_FORMAT_R5G5B5A1_UNORM_PACK16";
  2133. case VK_FORMAT_R5G6B5_UNORM_PACK16:
  2134. return "VK_FORMAT_R5G6B5_UNORM_PACK16";
  2135. case VK_FORMAT_R64G64B64A64_SFLOAT:
  2136. return "VK_FORMAT_R64G64B64A64_SFLOAT";
  2137. case VK_FORMAT_R64G64B64A64_SINT:
  2138. return "VK_FORMAT_R64G64B64A64_SINT";
  2139. case VK_FORMAT_R64G64B64A64_UINT:
  2140. return "VK_FORMAT_R64G64B64A64_UINT";
  2141. case VK_FORMAT_R64G64B64_SFLOAT:
  2142. return "VK_FORMAT_R64G64B64_SFLOAT";
  2143. case VK_FORMAT_R64G64B64_SINT:
  2144. return "VK_FORMAT_R64G64B64_SINT";
  2145. case VK_FORMAT_R64G64B64_UINT:
  2146. return "VK_FORMAT_R64G64B64_UINT";
  2147. case VK_FORMAT_R64G64_SFLOAT:
  2148. return "VK_FORMAT_R64G64_SFLOAT";
  2149. case VK_FORMAT_R64G64_SINT:
  2150. return "VK_FORMAT_R64G64_SINT";
  2151. case VK_FORMAT_R64G64_UINT:
  2152. return "VK_FORMAT_R64G64_UINT";
  2153. case VK_FORMAT_R64_SFLOAT:
  2154. return "VK_FORMAT_R64_SFLOAT";
  2155. case VK_FORMAT_R64_SINT:
  2156. return "VK_FORMAT_R64_SINT";
  2157. case VK_FORMAT_R64_UINT:
  2158. return "VK_FORMAT_R64_UINT";
  2159. case VK_FORMAT_R8G8B8A8_SINT:
  2160. return "VK_FORMAT_R8G8B8A8_SINT";
  2161. case VK_FORMAT_R8G8B8A8_SNORM:
  2162. return "VK_FORMAT_R8G8B8A8_SNORM";
  2163. case VK_FORMAT_R8G8B8A8_SRGB:
  2164. return "VK_FORMAT_R8G8B8A8_SRGB";
  2165. case VK_FORMAT_R8G8B8A8_SSCALED:
  2166. return "VK_FORMAT_R8G8B8A8_SSCALED";
  2167. case VK_FORMAT_R8G8B8A8_UINT:
  2168. return "VK_FORMAT_R8G8B8A8_UINT";
  2169. case VK_FORMAT_R8G8B8A8_UNORM:
  2170. return "VK_FORMAT_R8G8B8A8_UNORM";
  2171. case VK_FORMAT_R8G8B8A8_USCALED:
  2172. return "VK_FORMAT_R8G8B8A8_USCALED";
  2173. case VK_FORMAT_R8G8B8_SINT:
  2174. return "VK_FORMAT_R8G8B8_SINT";
  2175. case VK_FORMAT_R8G8B8_SNORM:
  2176. return "VK_FORMAT_R8G8B8_SNORM";
  2177. case VK_FORMAT_R8G8B8_SRGB:
  2178. return "VK_FORMAT_R8G8B8_SRGB";
  2179. case VK_FORMAT_R8G8B8_SSCALED:
  2180. return "VK_FORMAT_R8G8B8_SSCALED";
  2181. case VK_FORMAT_R8G8B8_UINT:
  2182. return "VK_FORMAT_R8G8B8_UINT";
  2183. case VK_FORMAT_R8G8B8_UNORM:
  2184. return "VK_FORMAT_R8G8B8_UNORM";
  2185. case VK_FORMAT_R8G8B8_USCALED:
  2186. return "VK_FORMAT_R8G8B8_USCALED";
  2187. case VK_FORMAT_R8G8_SINT:
  2188. return "VK_FORMAT_R8G8_SINT";
  2189. case VK_FORMAT_R8G8_SNORM:
  2190. return "VK_FORMAT_R8G8_SNORM";
  2191. case VK_FORMAT_R8G8_SRGB:
  2192. return "VK_FORMAT_R8G8_SRGB";
  2193. case VK_FORMAT_R8G8_SSCALED:
  2194. return "VK_FORMAT_R8G8_SSCALED";
  2195. case VK_FORMAT_R8G8_UINT:
  2196. return "VK_FORMAT_R8G8_UINT";
  2197. case VK_FORMAT_R8G8_UNORM:
  2198. return "VK_FORMAT_R8G8_UNORM";
  2199. case VK_FORMAT_R8G8_USCALED:
  2200. return "VK_FORMAT_R8G8_USCALED";
  2201. case VK_FORMAT_R8_SINT:
  2202. return "VK_FORMAT_R8_SINT";
  2203. case VK_FORMAT_R8_SNORM:
  2204. return "VK_FORMAT_R8_SNORM";
  2205. case VK_FORMAT_R8_SRGB:
  2206. return "VK_FORMAT_R8_SRGB";
  2207. case VK_FORMAT_R8_SSCALED:
  2208. return "VK_FORMAT_R8_SSCALED";
  2209. case VK_FORMAT_R8_UINT:
  2210. return "VK_FORMAT_R8_UINT";
  2211. case VK_FORMAT_R8_UNORM:
  2212. return "VK_FORMAT_R8_UNORM";
  2213. case VK_FORMAT_R8_USCALED:
  2214. return "VK_FORMAT_R8_USCALED";
  2215. case VK_FORMAT_S8_UINT:
  2216. return "VK_FORMAT_S8_UINT";
  2217. case VK_FORMAT_UNDEFINED:
  2218. return "VK_FORMAT_UNDEFINED";
  2219. case VK_FORMAT_X8_D24_UNORM_PACK32:
  2220. return "VK_FORMAT_X8_D24_UNORM_PACK32";
  2221. default:
  2222. return "Unhandled VkFormat";
  2223. }
  2224. }
  2225. static inline const char* string_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits input_value)
  2226. {
  2227. switch (input_value)
  2228. {
  2229. case VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR:
  2230. return "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR";
  2231. case VK_FORMAT_FEATURE_BLIT_DST_BIT:
  2232. return "VK_FORMAT_FEATURE_BLIT_DST_BIT";
  2233. case VK_FORMAT_FEATURE_BLIT_SRC_BIT:
  2234. return "VK_FORMAT_FEATURE_BLIT_SRC_BIT";
  2235. case VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT:
  2236. return "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT";
  2237. case VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT:
  2238. return "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT";
  2239. case VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT:
  2240. return "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT";
  2241. case VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT:
  2242. return "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT";
  2243. case VK_FORMAT_FEATURE_DISJOINT_BIT:
  2244. return "VK_FORMAT_FEATURE_DISJOINT_BIT";
  2245. case VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT:
  2246. return "VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT";
  2247. case VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  2248. return "VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  2249. case VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT:
  2250. return "VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT";
  2251. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT:
  2252. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT";
  2253. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG:
  2254. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG";
  2255. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT:
  2256. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT";
  2257. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT:
  2258. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT";
  2259. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT:
  2260. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT";
  2261. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT:
  2262. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT";
  2263. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT:
  2264. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT";
  2265. case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT:
  2266. return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT";
  2267. case VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT:
  2268. return "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT";
  2269. case VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT:
  2270. return "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT";
  2271. case VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT:
  2272. return "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT";
  2273. case VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT:
  2274. return "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT";
  2275. case VK_FORMAT_FEATURE_TRANSFER_DST_BIT:
  2276. return "VK_FORMAT_FEATURE_TRANSFER_DST_BIT";
  2277. case VK_FORMAT_FEATURE_TRANSFER_SRC_BIT:
  2278. return "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT";
  2279. case VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT:
  2280. return "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT";
  2281. case VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT:
  2282. return "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT";
  2283. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2284. case VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR:
  2285. return "VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR";
  2286. #endif // VK_ENABLE_BETA_EXTENSIONS
  2287. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2288. case VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR:
  2289. return "VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR";
  2290. #endif // VK_ENABLE_BETA_EXTENSIONS
  2291. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2292. case VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR:
  2293. return "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR";
  2294. #endif // VK_ENABLE_BETA_EXTENSIONS
  2295. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2296. case VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR:
  2297. return "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR";
  2298. #endif // VK_ENABLE_BETA_EXTENSIONS
  2299. default:
  2300. return "Unhandled VkFormatFeatureFlagBits";
  2301. }
  2302. }
  2303. static inline std::string string_VkFormatFeatureFlags(VkFormatFeatureFlags input_value)
  2304. {
  2305. std::string ret;
  2306. int index = 0;
  2307. while(input_value) {
  2308. if (input_value & 1) {
  2309. if( !ret.empty()) ret.append("|");
  2310. ret.append(string_VkFormatFeatureFlagBits(static_cast<VkFormatFeatureFlagBits>(1U << index)));
  2311. }
  2312. ++index;
  2313. input_value >>= 1;
  2314. }
  2315. if( ret.empty()) ret.append(string_VkFormatFeatureFlagBits(static_cast<VkFormatFeatureFlagBits>(0)));
  2316. return ret;
  2317. }
  2318. static inline const char* string_VkImageCreateFlagBits(VkImageCreateFlagBits input_value)
  2319. {
  2320. switch (input_value)
  2321. {
  2322. case VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT:
  2323. return "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT";
  2324. case VK_IMAGE_CREATE_ALIAS_BIT:
  2325. return "VK_IMAGE_CREATE_ALIAS_BIT";
  2326. case VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT:
  2327. return "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT";
  2328. case VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV:
  2329. return "VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV";
  2330. case VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT:
  2331. return "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT";
  2332. case VK_IMAGE_CREATE_DISJOINT_BIT:
  2333. return "VK_IMAGE_CREATE_DISJOINT_BIT";
  2334. case VK_IMAGE_CREATE_EXTENDED_USAGE_BIT:
  2335. return "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT";
  2336. case VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT:
  2337. return "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT";
  2338. case VK_IMAGE_CREATE_PROTECTED_BIT:
  2339. return "VK_IMAGE_CREATE_PROTECTED_BIT";
  2340. case VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT:
  2341. return "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT";
  2342. case VK_IMAGE_CREATE_SPARSE_ALIASED_BIT:
  2343. return "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT";
  2344. case VK_IMAGE_CREATE_SPARSE_BINDING_BIT:
  2345. return "VK_IMAGE_CREATE_SPARSE_BINDING_BIT";
  2346. case VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT:
  2347. return "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT";
  2348. case VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT:
  2349. return "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT";
  2350. case VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT:
  2351. return "VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT";
  2352. default:
  2353. return "Unhandled VkImageCreateFlagBits";
  2354. }
  2355. }
  2356. static inline std::string string_VkImageCreateFlags(VkImageCreateFlags input_value)
  2357. {
  2358. std::string ret;
  2359. int index = 0;
  2360. while(input_value) {
  2361. if (input_value & 1) {
  2362. if( !ret.empty()) ret.append("|");
  2363. ret.append(string_VkImageCreateFlagBits(static_cast<VkImageCreateFlagBits>(1U << index)));
  2364. }
  2365. ++index;
  2366. input_value >>= 1;
  2367. }
  2368. if( ret.empty()) ret.append(string_VkImageCreateFlagBits(static_cast<VkImageCreateFlagBits>(0)));
  2369. return ret;
  2370. }
  2371. static inline const char* string_VkSampleCountFlagBits(VkSampleCountFlagBits input_value)
  2372. {
  2373. switch (input_value)
  2374. {
  2375. case VK_SAMPLE_COUNT_16_BIT:
  2376. return "VK_SAMPLE_COUNT_16_BIT";
  2377. case VK_SAMPLE_COUNT_1_BIT:
  2378. return "VK_SAMPLE_COUNT_1_BIT";
  2379. case VK_SAMPLE_COUNT_2_BIT:
  2380. return "VK_SAMPLE_COUNT_2_BIT";
  2381. case VK_SAMPLE_COUNT_32_BIT:
  2382. return "VK_SAMPLE_COUNT_32_BIT";
  2383. case VK_SAMPLE_COUNT_4_BIT:
  2384. return "VK_SAMPLE_COUNT_4_BIT";
  2385. case VK_SAMPLE_COUNT_64_BIT:
  2386. return "VK_SAMPLE_COUNT_64_BIT";
  2387. case VK_SAMPLE_COUNT_8_BIT:
  2388. return "VK_SAMPLE_COUNT_8_BIT";
  2389. default:
  2390. return "Unhandled VkSampleCountFlagBits";
  2391. }
  2392. }
  2393. static inline std::string string_VkSampleCountFlags(VkSampleCountFlags input_value)
  2394. {
  2395. std::string ret;
  2396. int index = 0;
  2397. while(input_value) {
  2398. if (input_value & 1) {
  2399. if( !ret.empty()) ret.append("|");
  2400. ret.append(string_VkSampleCountFlagBits(static_cast<VkSampleCountFlagBits>(1U << index)));
  2401. }
  2402. ++index;
  2403. input_value >>= 1;
  2404. }
  2405. if( ret.empty()) ret.append(string_VkSampleCountFlagBits(static_cast<VkSampleCountFlagBits>(0)));
  2406. return ret;
  2407. }
  2408. static inline const char* string_VkImageTiling(VkImageTiling input_value)
  2409. {
  2410. switch (input_value)
  2411. {
  2412. case VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT:
  2413. return "VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT";
  2414. case VK_IMAGE_TILING_LINEAR:
  2415. return "VK_IMAGE_TILING_LINEAR";
  2416. case VK_IMAGE_TILING_OPTIMAL:
  2417. return "VK_IMAGE_TILING_OPTIMAL";
  2418. default:
  2419. return "Unhandled VkImageTiling";
  2420. }
  2421. }
  2422. static inline const char* string_VkImageType(VkImageType input_value)
  2423. {
  2424. switch (input_value)
  2425. {
  2426. case VK_IMAGE_TYPE_1D:
  2427. return "VK_IMAGE_TYPE_1D";
  2428. case VK_IMAGE_TYPE_2D:
  2429. return "VK_IMAGE_TYPE_2D";
  2430. case VK_IMAGE_TYPE_3D:
  2431. return "VK_IMAGE_TYPE_3D";
  2432. default:
  2433. return "Unhandled VkImageType";
  2434. }
  2435. }
  2436. static inline const char* string_VkImageUsageFlagBits(VkImageUsageFlagBits input_value)
  2437. {
  2438. switch (input_value)
  2439. {
  2440. case VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT:
  2441. return "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT";
  2442. case VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT:
  2443. return "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT";
  2444. case VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT:
  2445. return "VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT";
  2446. case VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  2447. return "VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  2448. case VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT:
  2449. return "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT";
  2450. case VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI:
  2451. return "VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI";
  2452. case VK_IMAGE_USAGE_SAMPLED_BIT:
  2453. return "VK_IMAGE_USAGE_SAMPLED_BIT";
  2454. case VK_IMAGE_USAGE_STORAGE_BIT:
  2455. return "VK_IMAGE_USAGE_STORAGE_BIT";
  2456. case VK_IMAGE_USAGE_TRANSFER_DST_BIT:
  2457. return "VK_IMAGE_USAGE_TRANSFER_DST_BIT";
  2458. case VK_IMAGE_USAGE_TRANSFER_SRC_BIT:
  2459. return "VK_IMAGE_USAGE_TRANSFER_SRC_BIT";
  2460. case VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT:
  2461. return "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT";
  2462. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2463. case VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR:
  2464. return "VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR";
  2465. #endif // VK_ENABLE_BETA_EXTENSIONS
  2466. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2467. case VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR:
  2468. return "VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR";
  2469. #endif // VK_ENABLE_BETA_EXTENSIONS
  2470. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2471. case VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR:
  2472. return "VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR";
  2473. #endif // VK_ENABLE_BETA_EXTENSIONS
  2474. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2475. case VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR:
  2476. return "VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR";
  2477. #endif // VK_ENABLE_BETA_EXTENSIONS
  2478. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2479. case VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR:
  2480. return "VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR";
  2481. #endif // VK_ENABLE_BETA_EXTENSIONS
  2482. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2483. case VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR:
  2484. return "VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR";
  2485. #endif // VK_ENABLE_BETA_EXTENSIONS
  2486. default:
  2487. return "Unhandled VkImageUsageFlagBits";
  2488. }
  2489. }
  2490. static inline std::string string_VkImageUsageFlags(VkImageUsageFlags input_value)
  2491. {
  2492. std::string ret;
  2493. int index = 0;
  2494. while(input_value) {
  2495. if (input_value & 1) {
  2496. if( !ret.empty()) ret.append("|");
  2497. ret.append(string_VkImageUsageFlagBits(static_cast<VkImageUsageFlagBits>(1U << index)));
  2498. }
  2499. ++index;
  2500. input_value >>= 1;
  2501. }
  2502. if( ret.empty()) ret.append(string_VkImageUsageFlagBits(static_cast<VkImageUsageFlagBits>(0)));
  2503. return ret;
  2504. }
  2505. static inline const char* string_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits input_value)
  2506. {
  2507. switch (input_value)
  2508. {
  2509. case VK_MEMORY_HEAP_DEVICE_LOCAL_BIT:
  2510. return "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT";
  2511. case VK_MEMORY_HEAP_MULTI_INSTANCE_BIT:
  2512. return "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT";
  2513. default:
  2514. return "Unhandled VkMemoryHeapFlagBits";
  2515. }
  2516. }
  2517. static inline std::string string_VkMemoryHeapFlags(VkMemoryHeapFlags input_value)
  2518. {
  2519. std::string ret;
  2520. int index = 0;
  2521. while(input_value) {
  2522. if (input_value & 1) {
  2523. if( !ret.empty()) ret.append("|");
  2524. ret.append(string_VkMemoryHeapFlagBits(static_cast<VkMemoryHeapFlagBits>(1U << index)));
  2525. }
  2526. ++index;
  2527. input_value >>= 1;
  2528. }
  2529. if( ret.empty()) ret.append(string_VkMemoryHeapFlagBits(static_cast<VkMemoryHeapFlagBits>(0)));
  2530. return ret;
  2531. }
  2532. static inline const char* string_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits input_value)
  2533. {
  2534. switch (input_value)
  2535. {
  2536. case VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD:
  2537. return "VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD";
  2538. case VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT:
  2539. return "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT";
  2540. case VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD:
  2541. return "VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD";
  2542. case VK_MEMORY_PROPERTY_HOST_CACHED_BIT:
  2543. return "VK_MEMORY_PROPERTY_HOST_CACHED_BIT";
  2544. case VK_MEMORY_PROPERTY_HOST_COHERENT_BIT:
  2545. return "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT";
  2546. case VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT:
  2547. return "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT";
  2548. case VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT:
  2549. return "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT";
  2550. case VK_MEMORY_PROPERTY_PROTECTED_BIT:
  2551. return "VK_MEMORY_PROPERTY_PROTECTED_BIT";
  2552. case VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV:
  2553. return "VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV";
  2554. default:
  2555. return "Unhandled VkMemoryPropertyFlagBits";
  2556. }
  2557. }
  2558. static inline std::string string_VkMemoryPropertyFlags(VkMemoryPropertyFlags input_value)
  2559. {
  2560. std::string ret;
  2561. int index = 0;
  2562. while(input_value) {
  2563. if (input_value & 1) {
  2564. if( !ret.empty()) ret.append("|");
  2565. ret.append(string_VkMemoryPropertyFlagBits(static_cast<VkMemoryPropertyFlagBits>(1U << index)));
  2566. }
  2567. ++index;
  2568. input_value >>= 1;
  2569. }
  2570. if( ret.empty()) ret.append(string_VkMemoryPropertyFlagBits(static_cast<VkMemoryPropertyFlagBits>(0)));
  2571. return ret;
  2572. }
  2573. static inline const char* string_VkPhysicalDeviceType(VkPhysicalDeviceType input_value)
  2574. {
  2575. switch (input_value)
  2576. {
  2577. case VK_PHYSICAL_DEVICE_TYPE_CPU:
  2578. return "VK_PHYSICAL_DEVICE_TYPE_CPU";
  2579. case VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU:
  2580. return "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU";
  2581. case VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU:
  2582. return "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU";
  2583. case VK_PHYSICAL_DEVICE_TYPE_OTHER:
  2584. return "VK_PHYSICAL_DEVICE_TYPE_OTHER";
  2585. case VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU:
  2586. return "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU";
  2587. default:
  2588. return "Unhandled VkPhysicalDeviceType";
  2589. }
  2590. }
  2591. static inline const char* string_VkQueueFlagBits(VkQueueFlagBits input_value)
  2592. {
  2593. switch (input_value)
  2594. {
  2595. case VK_QUEUE_COMPUTE_BIT:
  2596. return "VK_QUEUE_COMPUTE_BIT";
  2597. case VK_QUEUE_GRAPHICS_BIT:
  2598. return "VK_QUEUE_GRAPHICS_BIT";
  2599. case VK_QUEUE_PROTECTED_BIT:
  2600. return "VK_QUEUE_PROTECTED_BIT";
  2601. case VK_QUEUE_SPARSE_BINDING_BIT:
  2602. return "VK_QUEUE_SPARSE_BINDING_BIT";
  2603. case VK_QUEUE_TRANSFER_BIT:
  2604. return "VK_QUEUE_TRANSFER_BIT";
  2605. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2606. case VK_QUEUE_VIDEO_DECODE_BIT_KHR:
  2607. return "VK_QUEUE_VIDEO_DECODE_BIT_KHR";
  2608. #endif // VK_ENABLE_BETA_EXTENSIONS
  2609. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2610. case VK_QUEUE_VIDEO_ENCODE_BIT_KHR:
  2611. return "VK_QUEUE_VIDEO_ENCODE_BIT_KHR";
  2612. #endif // VK_ENABLE_BETA_EXTENSIONS
  2613. default:
  2614. return "Unhandled VkQueueFlagBits";
  2615. }
  2616. }
  2617. static inline std::string string_VkQueueFlags(VkQueueFlags input_value)
  2618. {
  2619. std::string ret;
  2620. int index = 0;
  2621. while(input_value) {
  2622. if (input_value & 1) {
  2623. if( !ret.empty()) ret.append("|");
  2624. ret.append(string_VkQueueFlagBits(static_cast<VkQueueFlagBits>(1U << index)));
  2625. }
  2626. ++index;
  2627. input_value >>= 1;
  2628. }
  2629. if( ret.empty()) ret.append(string_VkQueueFlagBits(static_cast<VkQueueFlagBits>(0)));
  2630. return ret;
  2631. }
  2632. static inline const char* string_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits input_value)
  2633. {
  2634. switch (input_value)
  2635. {
  2636. case VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT:
  2637. return "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT";
  2638. default:
  2639. return "Unhandled VkDeviceQueueCreateFlagBits";
  2640. }
  2641. }
  2642. static inline std::string string_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags input_value)
  2643. {
  2644. std::string ret;
  2645. int index = 0;
  2646. while(input_value) {
  2647. if (input_value & 1) {
  2648. if( !ret.empty()) ret.append("|");
  2649. ret.append(string_VkDeviceQueueCreateFlagBits(static_cast<VkDeviceQueueCreateFlagBits>(1U << index)));
  2650. }
  2651. ++index;
  2652. input_value >>= 1;
  2653. }
  2654. if( ret.empty()) ret.append(string_VkDeviceQueueCreateFlagBits(static_cast<VkDeviceQueueCreateFlagBits>(0)));
  2655. return ret;
  2656. }
  2657. static inline const char* string_VkPipelineStageFlagBits(VkPipelineStageFlagBits input_value)
  2658. {
  2659. switch (input_value)
  2660. {
  2661. case VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
  2662. return "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
  2663. case VK_PIPELINE_STAGE_ALL_COMMANDS_BIT:
  2664. return "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT";
  2665. case VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT:
  2666. return "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT";
  2667. case VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT:
  2668. return "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT";
  2669. case VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT:
  2670. return "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT";
  2671. case VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV:
  2672. return "VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV";
  2673. case VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT:
  2674. return "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT";
  2675. case VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT:
  2676. return "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT";
  2677. case VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT:
  2678. return "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT";
  2679. case VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT:
  2680. return "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT";
  2681. case VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
  2682. return "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
  2683. case VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT:
  2684. return "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT";
  2685. case VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  2686. return "VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  2687. case VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT:
  2688. return "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT";
  2689. case VK_PIPELINE_STAGE_HOST_BIT:
  2690. return "VK_PIPELINE_STAGE_HOST_BIT";
  2691. case VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT:
  2692. return "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT";
  2693. case VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV:
  2694. return "VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV";
  2695. case VK_PIPELINE_STAGE_NONE_KHR:
  2696. return "VK_PIPELINE_STAGE_NONE_KHR";
  2697. case VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR:
  2698. return "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR";
  2699. case VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV:
  2700. return "VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV";
  2701. case VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT:
  2702. return "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT";
  2703. case VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT:
  2704. return "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT";
  2705. case VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT:
  2706. return "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT";
  2707. case VK_PIPELINE_STAGE_TRANSFER_BIT:
  2708. return "VK_PIPELINE_STAGE_TRANSFER_BIT";
  2709. case VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT:
  2710. return "VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT";
  2711. case VK_PIPELINE_STAGE_VERTEX_INPUT_BIT:
  2712. return "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT";
  2713. case VK_PIPELINE_STAGE_VERTEX_SHADER_BIT:
  2714. return "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT";
  2715. default:
  2716. return "Unhandled VkPipelineStageFlagBits";
  2717. }
  2718. }
  2719. static inline std::string string_VkPipelineStageFlags(VkPipelineStageFlags input_value)
  2720. {
  2721. std::string ret;
  2722. int index = 0;
  2723. while(input_value) {
  2724. if (input_value & 1) {
  2725. if( !ret.empty()) ret.append("|");
  2726. ret.append(string_VkPipelineStageFlagBits(static_cast<VkPipelineStageFlagBits>(1U << index)));
  2727. }
  2728. ++index;
  2729. input_value >>= 1;
  2730. }
  2731. if( ret.empty()) ret.append(string_VkPipelineStageFlagBits(static_cast<VkPipelineStageFlagBits>(0)));
  2732. return ret;
  2733. }
  2734. static inline const char* string_VkSparseMemoryBindFlagBits(VkSparseMemoryBindFlagBits input_value)
  2735. {
  2736. switch (input_value)
  2737. {
  2738. case VK_SPARSE_MEMORY_BIND_METADATA_BIT:
  2739. return "VK_SPARSE_MEMORY_BIND_METADATA_BIT";
  2740. default:
  2741. return "Unhandled VkSparseMemoryBindFlagBits";
  2742. }
  2743. }
  2744. static inline std::string string_VkSparseMemoryBindFlags(VkSparseMemoryBindFlags input_value)
  2745. {
  2746. std::string ret;
  2747. int index = 0;
  2748. while(input_value) {
  2749. if (input_value & 1) {
  2750. if( !ret.empty()) ret.append("|");
  2751. ret.append(string_VkSparseMemoryBindFlagBits(static_cast<VkSparseMemoryBindFlagBits>(1U << index)));
  2752. }
  2753. ++index;
  2754. input_value >>= 1;
  2755. }
  2756. if( ret.empty()) ret.append(string_VkSparseMemoryBindFlagBits(static_cast<VkSparseMemoryBindFlagBits>(0)));
  2757. return ret;
  2758. }
  2759. static inline const char* string_VkSparseImageFormatFlagBits(VkSparseImageFormatFlagBits input_value)
  2760. {
  2761. switch (input_value)
  2762. {
  2763. case VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT:
  2764. return "VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT";
  2765. case VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT:
  2766. return "VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT";
  2767. case VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT:
  2768. return "VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT";
  2769. default:
  2770. return "Unhandled VkSparseImageFormatFlagBits";
  2771. }
  2772. }
  2773. static inline std::string string_VkSparseImageFormatFlags(VkSparseImageFormatFlags input_value)
  2774. {
  2775. std::string ret;
  2776. int index = 0;
  2777. while(input_value) {
  2778. if (input_value & 1) {
  2779. if( !ret.empty()) ret.append("|");
  2780. ret.append(string_VkSparseImageFormatFlagBits(static_cast<VkSparseImageFormatFlagBits>(1U << index)));
  2781. }
  2782. ++index;
  2783. input_value >>= 1;
  2784. }
  2785. if( ret.empty()) ret.append(string_VkSparseImageFormatFlagBits(static_cast<VkSparseImageFormatFlagBits>(0)));
  2786. return ret;
  2787. }
  2788. static inline const char* string_VkFenceCreateFlagBits(VkFenceCreateFlagBits input_value)
  2789. {
  2790. switch (input_value)
  2791. {
  2792. case VK_FENCE_CREATE_SIGNALED_BIT:
  2793. return "VK_FENCE_CREATE_SIGNALED_BIT";
  2794. default:
  2795. return "Unhandled VkFenceCreateFlagBits";
  2796. }
  2797. }
  2798. static inline std::string string_VkFenceCreateFlags(VkFenceCreateFlags input_value)
  2799. {
  2800. std::string ret;
  2801. int index = 0;
  2802. while(input_value) {
  2803. if (input_value & 1) {
  2804. if( !ret.empty()) ret.append("|");
  2805. ret.append(string_VkFenceCreateFlagBits(static_cast<VkFenceCreateFlagBits>(1U << index)));
  2806. }
  2807. ++index;
  2808. input_value >>= 1;
  2809. }
  2810. if( ret.empty()) ret.append(string_VkFenceCreateFlagBits(static_cast<VkFenceCreateFlagBits>(0)));
  2811. return ret;
  2812. }
  2813. static inline const char* string_VkEventCreateFlagBits(VkEventCreateFlagBits input_value)
  2814. {
  2815. switch (input_value)
  2816. {
  2817. case VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR:
  2818. return "VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR";
  2819. default:
  2820. return "Unhandled VkEventCreateFlagBits";
  2821. }
  2822. }
  2823. static inline std::string string_VkEventCreateFlags(VkEventCreateFlags input_value)
  2824. {
  2825. std::string ret;
  2826. int index = 0;
  2827. while(input_value) {
  2828. if (input_value & 1) {
  2829. if( !ret.empty()) ret.append("|");
  2830. ret.append(string_VkEventCreateFlagBits(static_cast<VkEventCreateFlagBits>(1U << index)));
  2831. }
  2832. ++index;
  2833. input_value >>= 1;
  2834. }
  2835. if( ret.empty()) ret.append(string_VkEventCreateFlagBits(static_cast<VkEventCreateFlagBits>(0)));
  2836. return ret;
  2837. }
  2838. static inline const char* string_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits input_value)
  2839. {
  2840. switch (input_value)
  2841. {
  2842. case VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT:
  2843. return "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT";
  2844. case VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT:
  2845. return "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT";
  2846. case VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT:
  2847. return "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT";
  2848. case VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT:
  2849. return "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT";
  2850. case VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT:
  2851. return "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT";
  2852. case VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT:
  2853. return "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT";
  2854. case VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT:
  2855. return "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT";
  2856. case VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT:
  2857. return "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT";
  2858. case VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT:
  2859. return "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT";
  2860. case VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT:
  2861. return "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT";
  2862. case VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT:
  2863. return "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT";
  2864. default:
  2865. return "Unhandled VkQueryPipelineStatisticFlagBits";
  2866. }
  2867. }
  2868. static inline std::string string_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags input_value)
  2869. {
  2870. std::string ret;
  2871. int index = 0;
  2872. while(input_value) {
  2873. if (input_value & 1) {
  2874. if( !ret.empty()) ret.append("|");
  2875. ret.append(string_VkQueryPipelineStatisticFlagBits(static_cast<VkQueryPipelineStatisticFlagBits>(1U << index)));
  2876. }
  2877. ++index;
  2878. input_value >>= 1;
  2879. }
  2880. if( ret.empty()) ret.append(string_VkQueryPipelineStatisticFlagBits(static_cast<VkQueryPipelineStatisticFlagBits>(0)));
  2881. return ret;
  2882. }
  2883. static inline const char* string_VkQueryType(VkQueryType input_value)
  2884. {
  2885. switch (input_value)
  2886. {
  2887. case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR:
  2888. return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR";
  2889. case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV:
  2890. return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV";
  2891. case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR:
  2892. return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR";
  2893. case VK_QUERY_TYPE_OCCLUSION:
  2894. return "VK_QUERY_TYPE_OCCLUSION";
  2895. case VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL:
  2896. return "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL";
  2897. case VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR:
  2898. return "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR";
  2899. case VK_QUERY_TYPE_PIPELINE_STATISTICS:
  2900. return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
  2901. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2902. case VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR:
  2903. return "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR";
  2904. #endif // VK_ENABLE_BETA_EXTENSIONS
  2905. case VK_QUERY_TYPE_TIMESTAMP:
  2906. return "VK_QUERY_TYPE_TIMESTAMP";
  2907. case VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT:
  2908. return "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT";
  2909. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2910. case VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR:
  2911. return "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR";
  2912. #endif // VK_ENABLE_BETA_EXTENSIONS
  2913. default:
  2914. return "Unhandled VkQueryType";
  2915. }
  2916. }
  2917. static inline const char* string_VkQueryResultFlagBits(VkQueryResultFlagBits input_value)
  2918. {
  2919. switch (input_value)
  2920. {
  2921. case VK_QUERY_RESULT_64_BIT:
  2922. return "VK_QUERY_RESULT_64_BIT";
  2923. case VK_QUERY_RESULT_PARTIAL_BIT:
  2924. return "VK_QUERY_RESULT_PARTIAL_BIT";
  2925. case VK_QUERY_RESULT_WAIT_BIT:
  2926. return "VK_QUERY_RESULT_WAIT_BIT";
  2927. case VK_QUERY_RESULT_WITH_AVAILABILITY_BIT:
  2928. return "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT";
  2929. #ifdef VK_ENABLE_BETA_EXTENSIONS
  2930. case VK_QUERY_RESULT_WITH_STATUS_BIT_KHR:
  2931. return "VK_QUERY_RESULT_WITH_STATUS_BIT_KHR";
  2932. #endif // VK_ENABLE_BETA_EXTENSIONS
  2933. default:
  2934. return "Unhandled VkQueryResultFlagBits";
  2935. }
  2936. }
  2937. static inline std::string string_VkQueryResultFlags(VkQueryResultFlags input_value)
  2938. {
  2939. std::string ret;
  2940. int index = 0;
  2941. while(input_value) {
  2942. if (input_value & 1) {
  2943. if( !ret.empty()) ret.append("|");
  2944. ret.append(string_VkQueryResultFlagBits(static_cast<VkQueryResultFlagBits>(1U << index)));
  2945. }
  2946. ++index;
  2947. input_value >>= 1;
  2948. }
  2949. if( ret.empty()) ret.append(string_VkQueryResultFlagBits(static_cast<VkQueryResultFlagBits>(0)));
  2950. return ret;
  2951. }
  2952. static inline const char* string_VkBufferCreateFlagBits(VkBufferCreateFlagBits input_value)
  2953. {
  2954. switch (input_value)
  2955. {
  2956. case VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
  2957. return "VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
  2958. case VK_BUFFER_CREATE_PROTECTED_BIT:
  2959. return "VK_BUFFER_CREATE_PROTECTED_BIT";
  2960. case VK_BUFFER_CREATE_SPARSE_ALIASED_BIT:
  2961. return "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT";
  2962. case VK_BUFFER_CREATE_SPARSE_BINDING_BIT:
  2963. return "VK_BUFFER_CREATE_SPARSE_BINDING_BIT";
  2964. case VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT:
  2965. return "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT";
  2966. default:
  2967. return "Unhandled VkBufferCreateFlagBits";
  2968. }
  2969. }
  2970. static inline std::string string_VkBufferCreateFlags(VkBufferCreateFlags input_value)
  2971. {
  2972. std::string ret;
  2973. int index = 0;
  2974. while(input_value) {
  2975. if (input_value & 1) {
  2976. if( !ret.empty()) ret.append("|");
  2977. ret.append(string_VkBufferCreateFlagBits(static_cast<VkBufferCreateFlagBits>(1U << index)));
  2978. }
  2979. ++index;
  2980. input_value >>= 1;
  2981. }
  2982. if( ret.empty()) ret.append(string_VkBufferCreateFlagBits(static_cast<VkBufferCreateFlagBits>(0)));
  2983. return ret;
  2984. }
  2985. static inline const char* string_VkBufferUsageFlagBits(VkBufferUsageFlagBits input_value)
  2986. {
  2987. switch (input_value)
  2988. {
  2989. case VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR:
  2990. return "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR";
  2991. case VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR:
  2992. return "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR";
  2993. case VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT:
  2994. return "VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT";
  2995. case VK_BUFFER_USAGE_INDEX_BUFFER_BIT:
  2996. return "VK_BUFFER_USAGE_INDEX_BUFFER_BIT";
  2997. case VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT:
  2998. return "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT";
  2999. case VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR:
  3000. return "VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR";
  3001. case VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT:
  3002. return "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT";
  3003. case VK_BUFFER_USAGE_STORAGE_BUFFER_BIT:
  3004. return "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT";
  3005. case VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT:
  3006. return "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT";
  3007. case VK_BUFFER_USAGE_TRANSFER_DST_BIT:
  3008. return "VK_BUFFER_USAGE_TRANSFER_DST_BIT";
  3009. case VK_BUFFER_USAGE_TRANSFER_SRC_BIT:
  3010. return "VK_BUFFER_USAGE_TRANSFER_SRC_BIT";
  3011. case VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT:
  3012. return "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT";
  3013. case VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT:
  3014. return "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT";
  3015. case VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT:
  3016. return "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT";
  3017. case VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT:
  3018. return "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT";
  3019. case VK_BUFFER_USAGE_VERTEX_BUFFER_BIT:
  3020. return "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT";
  3021. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3022. case VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR:
  3023. return "VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR";
  3024. #endif // VK_ENABLE_BETA_EXTENSIONS
  3025. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3026. case VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR:
  3027. return "VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR";
  3028. #endif // VK_ENABLE_BETA_EXTENSIONS
  3029. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3030. case VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR:
  3031. return "VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR";
  3032. #endif // VK_ENABLE_BETA_EXTENSIONS
  3033. #ifdef VK_ENABLE_BETA_EXTENSIONS
  3034. case VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR:
  3035. return "VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR";
  3036. #endif // VK_ENABLE_BETA_EXTENSIONS
  3037. default:
  3038. return "Unhandled VkBufferUsageFlagBits";
  3039. }
  3040. }
  3041. static inline std::string string_VkBufferUsageFlags(VkBufferUsageFlags input_value)
  3042. {
  3043. std::string ret;
  3044. int index = 0;
  3045. while(input_value) {
  3046. if (input_value & 1) {
  3047. if( !ret.empty()) ret.append("|");
  3048. ret.append(string_VkBufferUsageFlagBits(static_cast<VkBufferUsageFlagBits>(1U << index)));
  3049. }
  3050. ++index;
  3051. input_value >>= 1;
  3052. }
  3053. if( ret.empty()) ret.append(string_VkBufferUsageFlagBits(static_cast<VkBufferUsageFlagBits>(0)));
  3054. return ret;
  3055. }
  3056. static inline const char* string_VkSharingMode(VkSharingMode input_value)
  3057. {
  3058. switch (input_value)
  3059. {
  3060. case VK_SHARING_MODE_CONCURRENT:
  3061. return "VK_SHARING_MODE_CONCURRENT";
  3062. case VK_SHARING_MODE_EXCLUSIVE:
  3063. return "VK_SHARING_MODE_EXCLUSIVE";
  3064. default:
  3065. return "Unhandled VkSharingMode";
  3066. }
  3067. }
  3068. static inline const char* string_VkComponentSwizzle(VkComponentSwizzle input_value)
  3069. {
  3070. switch (input_value)
  3071. {
  3072. case VK_COMPONENT_SWIZZLE_A:
  3073. return "VK_COMPONENT_SWIZZLE_A";
  3074. case VK_COMPONENT_SWIZZLE_B:
  3075. return "VK_COMPONENT_SWIZZLE_B";
  3076. case VK_COMPONENT_SWIZZLE_G:
  3077. return "VK_COMPONENT_SWIZZLE_G";
  3078. case VK_COMPONENT_SWIZZLE_IDENTITY:
  3079. return "VK_COMPONENT_SWIZZLE_IDENTITY";
  3080. case VK_COMPONENT_SWIZZLE_ONE:
  3081. return "VK_COMPONENT_SWIZZLE_ONE";
  3082. case VK_COMPONENT_SWIZZLE_R:
  3083. return "VK_COMPONENT_SWIZZLE_R";
  3084. case VK_COMPONENT_SWIZZLE_ZERO:
  3085. return "VK_COMPONENT_SWIZZLE_ZERO";
  3086. default:
  3087. return "Unhandled VkComponentSwizzle";
  3088. }
  3089. }
  3090. static inline const char* string_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits input_value)
  3091. {
  3092. switch (input_value)
  3093. {
  3094. case VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT:
  3095. return "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT";
  3096. case VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT:
  3097. return "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT";
  3098. default:
  3099. return "Unhandled VkImageViewCreateFlagBits";
  3100. }
  3101. }
  3102. static inline std::string string_VkImageViewCreateFlags(VkImageViewCreateFlags input_value)
  3103. {
  3104. std::string ret;
  3105. int index = 0;
  3106. while(input_value) {
  3107. if (input_value & 1) {
  3108. if( !ret.empty()) ret.append("|");
  3109. ret.append(string_VkImageViewCreateFlagBits(static_cast<VkImageViewCreateFlagBits>(1U << index)));
  3110. }
  3111. ++index;
  3112. input_value >>= 1;
  3113. }
  3114. if( ret.empty()) ret.append(string_VkImageViewCreateFlagBits(static_cast<VkImageViewCreateFlagBits>(0)));
  3115. return ret;
  3116. }
  3117. static inline const char* string_VkImageViewType(VkImageViewType input_value)
  3118. {
  3119. switch (input_value)
  3120. {
  3121. case VK_IMAGE_VIEW_TYPE_1D:
  3122. return "VK_IMAGE_VIEW_TYPE_1D";
  3123. case VK_IMAGE_VIEW_TYPE_1D_ARRAY:
  3124. return "VK_IMAGE_VIEW_TYPE_1D_ARRAY";
  3125. case VK_IMAGE_VIEW_TYPE_2D:
  3126. return "VK_IMAGE_VIEW_TYPE_2D";
  3127. case VK_IMAGE_VIEW_TYPE_2D_ARRAY:
  3128. return "VK_IMAGE_VIEW_TYPE_2D_ARRAY";
  3129. case VK_IMAGE_VIEW_TYPE_3D:
  3130. return "VK_IMAGE_VIEW_TYPE_3D";
  3131. case VK_IMAGE_VIEW_TYPE_CUBE:
  3132. return "VK_IMAGE_VIEW_TYPE_CUBE";
  3133. case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:
  3134. return "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY";
  3135. default:
  3136. return "Unhandled VkImageViewType";
  3137. }
  3138. }
  3139. static inline const char* string_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits input_value)
  3140. {
  3141. switch (input_value)
  3142. {
  3143. case VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT:
  3144. return "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT";
  3145. default:
  3146. return "Unhandled VkPipelineCacheCreateFlagBits";
  3147. }
  3148. }
  3149. static inline std::string string_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags input_value)
  3150. {
  3151. std::string ret;
  3152. int index = 0;
  3153. while(input_value) {
  3154. if (input_value & 1) {
  3155. if( !ret.empty()) ret.append("|");
  3156. ret.append(string_VkPipelineCacheCreateFlagBits(static_cast<VkPipelineCacheCreateFlagBits>(1U << index)));
  3157. }
  3158. ++index;
  3159. input_value >>= 1;
  3160. }
  3161. if( ret.empty()) ret.append(string_VkPipelineCacheCreateFlagBits(static_cast<VkPipelineCacheCreateFlagBits>(0)));
  3162. return ret;
  3163. }
  3164. static inline const char* string_VkBlendFactor(VkBlendFactor input_value)
  3165. {
  3166. switch (input_value)
  3167. {
  3168. case VK_BLEND_FACTOR_CONSTANT_ALPHA:
  3169. return "VK_BLEND_FACTOR_CONSTANT_ALPHA";
  3170. case VK_BLEND_FACTOR_CONSTANT_COLOR:
  3171. return "VK_BLEND_FACTOR_CONSTANT_COLOR";
  3172. case VK_BLEND_FACTOR_DST_ALPHA:
  3173. return "VK_BLEND_FACTOR_DST_ALPHA";
  3174. case VK_BLEND_FACTOR_DST_COLOR:
  3175. return "VK_BLEND_FACTOR_DST_COLOR";
  3176. case VK_BLEND_FACTOR_ONE:
  3177. return "VK_BLEND_FACTOR_ONE";
  3178. case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA:
  3179. return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA";
  3180. case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR:
  3181. return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR";
  3182. case VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA:
  3183. return "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA";
  3184. case VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR:
  3185. return "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR";
  3186. case VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA:
  3187. return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA";
  3188. case VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR:
  3189. return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR";
  3190. case VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA:
  3191. return "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA";
  3192. case VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR:
  3193. return "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR";
  3194. case VK_BLEND_FACTOR_SRC1_ALPHA:
  3195. return "VK_BLEND_FACTOR_SRC1_ALPHA";
  3196. case VK_BLEND_FACTOR_SRC1_COLOR:
  3197. return "VK_BLEND_FACTOR_SRC1_COLOR";
  3198. case VK_BLEND_FACTOR_SRC_ALPHA:
  3199. return "VK_BLEND_FACTOR_SRC_ALPHA";
  3200. case VK_BLEND_FACTOR_SRC_ALPHA_SATURATE:
  3201. return "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE";
  3202. case VK_BLEND_FACTOR_SRC_COLOR:
  3203. return "VK_BLEND_FACTOR_SRC_COLOR";
  3204. case VK_BLEND_FACTOR_ZERO:
  3205. return "VK_BLEND_FACTOR_ZERO";
  3206. default:
  3207. return "Unhandled VkBlendFactor";
  3208. }
  3209. }
  3210. static inline const char* string_VkBlendOp(VkBlendOp input_value)
  3211. {
  3212. switch (input_value)
  3213. {
  3214. case VK_BLEND_OP_ADD:
  3215. return "VK_BLEND_OP_ADD";
  3216. case VK_BLEND_OP_BLUE_EXT:
  3217. return "VK_BLEND_OP_BLUE_EXT";
  3218. case VK_BLEND_OP_COLORBURN_EXT:
  3219. return "VK_BLEND_OP_COLORBURN_EXT";
  3220. case VK_BLEND_OP_COLORDODGE_EXT:
  3221. return "VK_BLEND_OP_COLORDODGE_EXT";
  3222. case VK_BLEND_OP_CONTRAST_EXT:
  3223. return "VK_BLEND_OP_CONTRAST_EXT";
  3224. case VK_BLEND_OP_DARKEN_EXT:
  3225. return "VK_BLEND_OP_DARKEN_EXT";
  3226. case VK_BLEND_OP_DIFFERENCE_EXT:
  3227. return "VK_BLEND_OP_DIFFERENCE_EXT";
  3228. case VK_BLEND_OP_DST_ATOP_EXT:
  3229. return "VK_BLEND_OP_DST_ATOP_EXT";
  3230. case VK_BLEND_OP_DST_EXT:
  3231. return "VK_BLEND_OP_DST_EXT";
  3232. case VK_BLEND_OP_DST_IN_EXT:
  3233. return "VK_BLEND_OP_DST_IN_EXT";
  3234. case VK_BLEND_OP_DST_OUT_EXT:
  3235. return "VK_BLEND_OP_DST_OUT_EXT";
  3236. case VK_BLEND_OP_DST_OVER_EXT:
  3237. return "VK_BLEND_OP_DST_OVER_EXT";
  3238. case VK_BLEND_OP_EXCLUSION_EXT:
  3239. return "VK_BLEND_OP_EXCLUSION_EXT";
  3240. case VK_BLEND_OP_GREEN_EXT:
  3241. return "VK_BLEND_OP_GREEN_EXT";
  3242. case VK_BLEND_OP_HARDLIGHT_EXT:
  3243. return "VK_BLEND_OP_HARDLIGHT_EXT";
  3244. case VK_BLEND_OP_HARDMIX_EXT:
  3245. return "VK_BLEND_OP_HARDMIX_EXT";
  3246. case VK_BLEND_OP_HSL_COLOR_EXT:
  3247. return "VK_BLEND_OP_HSL_COLOR_EXT";
  3248. case VK_BLEND_OP_HSL_HUE_EXT:
  3249. return "VK_BLEND_OP_HSL_HUE_EXT";
  3250. case VK_BLEND_OP_HSL_LUMINOSITY_EXT:
  3251. return "VK_BLEND_OP_HSL_LUMINOSITY_EXT";
  3252. case VK_BLEND_OP_HSL_SATURATION_EXT:
  3253. return "VK_BLEND_OP_HSL_SATURATION_EXT";
  3254. case VK_BLEND_OP_INVERT_EXT:
  3255. return "VK_BLEND_OP_INVERT_EXT";
  3256. case VK_BLEND_OP_INVERT_OVG_EXT:
  3257. return "VK_BLEND_OP_INVERT_OVG_EXT";
  3258. case VK_BLEND_OP_INVERT_RGB_EXT:
  3259. return "VK_BLEND_OP_INVERT_RGB_EXT";
  3260. case VK_BLEND_OP_LIGHTEN_EXT:
  3261. return "VK_BLEND_OP_LIGHTEN_EXT";
  3262. case VK_BLEND_OP_LINEARBURN_EXT:
  3263. return "VK_BLEND_OP_LINEARBURN_EXT";
  3264. case VK_BLEND_OP_LINEARDODGE_EXT:
  3265. return "VK_BLEND_OP_LINEARDODGE_EXT";
  3266. case VK_BLEND_OP_LINEARLIGHT_EXT:
  3267. return "VK_BLEND_OP_LINEARLIGHT_EXT";
  3268. case VK_BLEND_OP_MAX:
  3269. return "VK_BLEND_OP_MAX";
  3270. case VK_BLEND_OP_MIN:
  3271. return "VK_BLEND_OP_MIN";
  3272. case VK_BLEND_OP_MINUS_CLAMPED_EXT:
  3273. return "VK_BLEND_OP_MINUS_CLAMPED_EXT";
  3274. case VK_BLEND_OP_MINUS_EXT:
  3275. return "VK_BLEND_OP_MINUS_EXT";
  3276. case VK_BLEND_OP_MULTIPLY_EXT:
  3277. return "VK_BLEND_OP_MULTIPLY_EXT";
  3278. case VK_BLEND_OP_OVERLAY_EXT:
  3279. return "VK_BLEND_OP_OVERLAY_EXT";
  3280. case VK_BLEND_OP_PINLIGHT_EXT:
  3281. return "VK_BLEND_OP_PINLIGHT_EXT";
  3282. case VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT:
  3283. return "VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT";
  3284. case VK_BLEND_OP_PLUS_CLAMPED_EXT:
  3285. return "VK_BLEND_OP_PLUS_CLAMPED_EXT";
  3286. case VK_BLEND_OP_PLUS_DARKER_EXT:
  3287. return "VK_BLEND_OP_PLUS_DARKER_EXT";
  3288. case VK_BLEND_OP_PLUS_EXT:
  3289. return "VK_BLEND_OP_PLUS_EXT";
  3290. case VK_BLEND_OP_RED_EXT:
  3291. return "VK_BLEND_OP_RED_EXT";
  3292. case VK_BLEND_OP_REVERSE_SUBTRACT:
  3293. return "VK_BLEND_OP_REVERSE_SUBTRACT";
  3294. case VK_BLEND_OP_SCREEN_EXT:
  3295. return "VK_BLEND_OP_SCREEN_EXT";
  3296. case VK_BLEND_OP_SOFTLIGHT_EXT:
  3297. return "VK_BLEND_OP_SOFTLIGHT_EXT";
  3298. case VK_BLEND_OP_SRC_ATOP_EXT:
  3299. return "VK_BLEND_OP_SRC_ATOP_EXT";
  3300. case VK_BLEND_OP_SRC_EXT:
  3301. return "VK_BLEND_OP_SRC_EXT";
  3302. case VK_BLEND_OP_SRC_IN_EXT:
  3303. return "VK_BLEND_OP_SRC_IN_EXT";
  3304. case VK_BLEND_OP_SRC_OUT_EXT:
  3305. return "VK_BLEND_OP_SRC_OUT_EXT";
  3306. case VK_BLEND_OP_SRC_OVER_EXT:
  3307. return "VK_BLEND_OP_SRC_OVER_EXT";
  3308. case VK_BLEND_OP_SUBTRACT:
  3309. return "VK_BLEND_OP_SUBTRACT";
  3310. case VK_BLEND_OP_VIVIDLIGHT_EXT:
  3311. return "VK_BLEND_OP_VIVIDLIGHT_EXT";
  3312. case VK_BLEND_OP_XOR_EXT:
  3313. return "VK_BLEND_OP_XOR_EXT";
  3314. case VK_BLEND_OP_ZERO_EXT:
  3315. return "VK_BLEND_OP_ZERO_EXT";
  3316. default:
  3317. return "Unhandled VkBlendOp";
  3318. }
  3319. }
  3320. static inline const char* string_VkColorComponentFlagBits(VkColorComponentFlagBits input_value)
  3321. {
  3322. switch (input_value)
  3323. {
  3324. case VK_COLOR_COMPONENT_A_BIT:
  3325. return "VK_COLOR_COMPONENT_A_BIT";
  3326. case VK_COLOR_COMPONENT_B_BIT:
  3327. return "VK_COLOR_COMPONENT_B_BIT";
  3328. case VK_COLOR_COMPONENT_G_BIT:
  3329. return "VK_COLOR_COMPONENT_G_BIT";
  3330. case VK_COLOR_COMPONENT_R_BIT:
  3331. return "VK_COLOR_COMPONENT_R_BIT";
  3332. default:
  3333. return "Unhandled VkColorComponentFlagBits";
  3334. }
  3335. }
  3336. static inline std::string string_VkColorComponentFlags(VkColorComponentFlags input_value)
  3337. {
  3338. std::string ret;
  3339. int index = 0;
  3340. while(input_value) {
  3341. if (input_value & 1) {
  3342. if( !ret.empty()) ret.append("|");
  3343. ret.append(string_VkColorComponentFlagBits(static_cast<VkColorComponentFlagBits>(1U << index)));
  3344. }
  3345. ++index;
  3346. input_value >>= 1;
  3347. }
  3348. if( ret.empty()) ret.append(string_VkColorComponentFlagBits(static_cast<VkColorComponentFlagBits>(0)));
  3349. return ret;
  3350. }
  3351. static inline const char* string_VkCompareOp(VkCompareOp input_value)
  3352. {
  3353. switch (input_value)
  3354. {
  3355. case VK_COMPARE_OP_ALWAYS:
  3356. return "VK_COMPARE_OP_ALWAYS";
  3357. case VK_COMPARE_OP_EQUAL:
  3358. return "VK_COMPARE_OP_EQUAL";
  3359. case VK_COMPARE_OP_GREATER:
  3360. return "VK_COMPARE_OP_GREATER";
  3361. case VK_COMPARE_OP_GREATER_OR_EQUAL:
  3362. return "VK_COMPARE_OP_GREATER_OR_EQUAL";
  3363. case VK_COMPARE_OP_LESS:
  3364. return "VK_COMPARE_OP_LESS";
  3365. case VK_COMPARE_OP_LESS_OR_EQUAL:
  3366. return "VK_COMPARE_OP_LESS_OR_EQUAL";
  3367. case VK_COMPARE_OP_NEVER:
  3368. return "VK_COMPARE_OP_NEVER";
  3369. case VK_COMPARE_OP_NOT_EQUAL:
  3370. return "VK_COMPARE_OP_NOT_EQUAL";
  3371. default:
  3372. return "Unhandled VkCompareOp";
  3373. }
  3374. }
  3375. static inline const char* string_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits input_value)
  3376. {
  3377. switch (input_value)
  3378. {
  3379. case VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT:
  3380. return "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT";
  3381. case VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR:
  3382. return "VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR";
  3383. case VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR:
  3384. return "VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR";
  3385. case VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV:
  3386. return "VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV";
  3387. case VK_PIPELINE_CREATE_DERIVATIVE_BIT:
  3388. return "VK_PIPELINE_CREATE_DERIVATIVE_BIT";
  3389. case VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT:
  3390. return "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT";
  3391. case VK_PIPELINE_CREATE_DISPATCH_BASE_BIT:
  3392. return "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT";
  3393. case VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT:
  3394. return "VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT";
  3395. case VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT:
  3396. return "VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT";
  3397. case VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV:
  3398. return "VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV";
  3399. case VK_PIPELINE_CREATE_LIBRARY_BIT_KHR:
  3400. return "VK_PIPELINE_CREATE_LIBRARY_BIT_KHR";
  3401. case VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV:
  3402. return "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV";
  3403. case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR:
  3404. return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR";
  3405. case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR:
  3406. return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR";
  3407. case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR:
  3408. return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR";
  3409. case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR:
  3410. return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR";
  3411. case VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR:
  3412. return "VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR";
  3413. case VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR:
  3414. return "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR";
  3415. case VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR:
  3416. return "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR";
  3417. case VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT:
  3418. return "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT";
  3419. default:
  3420. return "Unhandled VkPipelineCreateFlagBits";
  3421. }
  3422. }
  3423. static inline std::string string_VkPipelineCreateFlags(VkPipelineCreateFlags input_value)
  3424. {
  3425. std::string ret;
  3426. int index = 0;
  3427. while(input_value) {
  3428. if (input_value & 1) {
  3429. if( !ret.empty()) ret.append("|");
  3430. ret.append(string_VkPipelineCreateFlagBits(static_cast<VkPipelineCreateFlagBits>(1U << index)));
  3431. }
  3432. ++index;
  3433. input_value >>= 1;
  3434. }
  3435. if( ret.empty()) ret.append(string_VkPipelineCreateFlagBits(static_cast<VkPipelineCreateFlagBits>(0)));
  3436. return ret;
  3437. }
  3438. static inline const char* string_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits input_value)
  3439. {
  3440. switch (input_value)
  3441. {
  3442. case VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT:
  3443. return "VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT";
  3444. case VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT:
  3445. return "VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT";
  3446. default:
  3447. return "Unhandled VkPipelineShaderStageCreateFlagBits";
  3448. }
  3449. }
  3450. static inline std::string string_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags input_value)
  3451. {
  3452. std::string ret;
  3453. int index = 0;
  3454. while(input_value) {
  3455. if (input_value & 1) {
  3456. if( !ret.empty()) ret.append("|");
  3457. ret.append(string_VkPipelineShaderStageCreateFlagBits(static_cast<VkPipelineShaderStageCreateFlagBits>(1U << index)));
  3458. }
  3459. ++index;
  3460. input_value >>= 1;
  3461. }
  3462. if( ret.empty()) ret.append(string_VkPipelineShaderStageCreateFlagBits(static_cast<VkPipelineShaderStageCreateFlagBits>(0)));
  3463. return ret;
  3464. }
  3465. static inline const char* string_VkShaderStageFlagBits(VkShaderStageFlagBits input_value)
  3466. {
  3467. switch (input_value)
  3468. {
  3469. case VK_SHADER_STAGE_ALL:
  3470. return "VK_SHADER_STAGE_ALL";
  3471. case VK_SHADER_STAGE_ALL_GRAPHICS:
  3472. return "VK_SHADER_STAGE_ALL_GRAPHICS";
  3473. case VK_SHADER_STAGE_ANY_HIT_BIT_KHR:
  3474. return "VK_SHADER_STAGE_ANY_HIT_BIT_KHR";
  3475. case VK_SHADER_STAGE_CALLABLE_BIT_KHR:
  3476. return "VK_SHADER_STAGE_CALLABLE_BIT_KHR";
  3477. case VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR:
  3478. return "VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR";
  3479. case VK_SHADER_STAGE_COMPUTE_BIT:
  3480. return "VK_SHADER_STAGE_COMPUTE_BIT";
  3481. case VK_SHADER_STAGE_FRAGMENT_BIT:
  3482. return "VK_SHADER_STAGE_FRAGMENT_BIT";
  3483. case VK_SHADER_STAGE_GEOMETRY_BIT:
  3484. return "VK_SHADER_STAGE_GEOMETRY_BIT";
  3485. case VK_SHADER_STAGE_INTERSECTION_BIT_KHR:
  3486. return "VK_SHADER_STAGE_INTERSECTION_BIT_KHR";
  3487. case VK_SHADER_STAGE_MESH_BIT_NV:
  3488. return "VK_SHADER_STAGE_MESH_BIT_NV";
  3489. case VK_SHADER_STAGE_MISS_BIT_KHR:
  3490. return "VK_SHADER_STAGE_MISS_BIT_KHR";
  3491. case VK_SHADER_STAGE_RAYGEN_BIT_KHR:
  3492. return "VK_SHADER_STAGE_RAYGEN_BIT_KHR";
  3493. case VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI:
  3494. return "VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI";
  3495. case VK_SHADER_STAGE_TASK_BIT_NV:
  3496. return "VK_SHADER_STAGE_TASK_BIT_NV";
  3497. case VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT:
  3498. return "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT";
  3499. case VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT:
  3500. return "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT";
  3501. case VK_SHADER_STAGE_VERTEX_BIT:
  3502. return "VK_SHADER_STAGE_VERTEX_BIT";
  3503. default:
  3504. return "Unhandled VkShaderStageFlagBits";
  3505. }
  3506. }
  3507. static inline std::string string_VkShaderStageFlags(VkShaderStageFlags input_value)
  3508. {
  3509. std::string ret;
  3510. int index = 0;
  3511. while(input_value) {
  3512. if (input_value & 1) {
  3513. if( !ret.empty()) ret.append("|");
  3514. ret.append(string_VkShaderStageFlagBits(static_cast<VkShaderStageFlagBits>(1U << index)));
  3515. }
  3516. ++index;
  3517. input_value >>= 1;
  3518. }
  3519. if( ret.empty()) ret.append(string_VkShaderStageFlagBits(static_cast<VkShaderStageFlagBits>(0)));
  3520. return ret;
  3521. }
  3522. static inline const char* string_VkCullModeFlagBits(VkCullModeFlagBits input_value)
  3523. {
  3524. switch (input_value)
  3525. {
  3526. case VK_CULL_MODE_BACK_BIT:
  3527. return "VK_CULL_MODE_BACK_BIT";
  3528. case VK_CULL_MODE_FRONT_AND_BACK:
  3529. return "VK_CULL_MODE_FRONT_AND_BACK";
  3530. case VK_CULL_MODE_FRONT_BIT:
  3531. return "VK_CULL_MODE_FRONT_BIT";
  3532. case VK_CULL_MODE_NONE:
  3533. return "VK_CULL_MODE_NONE";
  3534. default:
  3535. return "Unhandled VkCullModeFlagBits";
  3536. }
  3537. }
  3538. static inline std::string string_VkCullModeFlags(VkCullModeFlags input_value)
  3539. {
  3540. std::string ret;
  3541. int index = 0;
  3542. while(input_value) {
  3543. if (input_value & 1) {
  3544. if( !ret.empty()) ret.append("|");
  3545. ret.append(string_VkCullModeFlagBits(static_cast<VkCullModeFlagBits>(1U << index)));
  3546. }
  3547. ++index;
  3548. input_value >>= 1;
  3549. }
  3550. if( ret.empty()) ret.append(string_VkCullModeFlagBits(static_cast<VkCullModeFlagBits>(0)));
  3551. return ret;
  3552. }
  3553. static inline const char* string_VkDynamicState(VkDynamicState input_value)
  3554. {
  3555. switch (input_value)
  3556. {
  3557. case VK_DYNAMIC_STATE_BLEND_CONSTANTS:
  3558. return "VK_DYNAMIC_STATE_BLEND_CONSTANTS";
  3559. case VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT:
  3560. return "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT";
  3561. case VK_DYNAMIC_STATE_CULL_MODE_EXT:
  3562. return "VK_DYNAMIC_STATE_CULL_MODE_EXT";
  3563. case VK_DYNAMIC_STATE_DEPTH_BIAS:
  3564. return "VK_DYNAMIC_STATE_DEPTH_BIAS";
  3565. case VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT:
  3566. return "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT";
  3567. case VK_DYNAMIC_STATE_DEPTH_BOUNDS:
  3568. return "VK_DYNAMIC_STATE_DEPTH_BOUNDS";
  3569. case VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT:
  3570. return "VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT";
  3571. case VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT:
  3572. return "VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT";
  3573. case VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT:
  3574. return "VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT";
  3575. case VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT:
  3576. return "VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT";
  3577. case VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT:
  3578. return "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT";
  3579. case VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV:
  3580. return "VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV";
  3581. case VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR:
  3582. return "VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR";
  3583. case VK_DYNAMIC_STATE_FRONT_FACE_EXT:
  3584. return "VK_DYNAMIC_STATE_FRONT_FACE_EXT";
  3585. case VK_DYNAMIC_STATE_LINE_STIPPLE_EXT:
  3586. return "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT";
  3587. case VK_DYNAMIC_STATE_LINE_WIDTH:
  3588. return "VK_DYNAMIC_STATE_LINE_WIDTH";
  3589. case VK_DYNAMIC_STATE_LOGIC_OP_EXT:
  3590. return "VK_DYNAMIC_STATE_LOGIC_OP_EXT";
  3591. case VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT:
  3592. return "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT";
  3593. case VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT:
  3594. return "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT";
  3595. case VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT:
  3596. return "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT";
  3597. case VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT:
  3598. return "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT";
  3599. case VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR:
  3600. return "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR";
  3601. case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT:
  3602. return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT";
  3603. case VK_DYNAMIC_STATE_SCISSOR:
  3604. return "VK_DYNAMIC_STATE_SCISSOR";
  3605. case VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT:
  3606. return "VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT";
  3607. case VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK:
  3608. return "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK";
  3609. case VK_DYNAMIC_STATE_STENCIL_OP_EXT:
  3610. return "VK_DYNAMIC_STATE_STENCIL_OP_EXT";
  3611. case VK_DYNAMIC_STATE_STENCIL_REFERENCE:
  3612. return "VK_DYNAMIC_STATE_STENCIL_REFERENCE";
  3613. case VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT:
  3614. return "VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT";
  3615. case VK_DYNAMIC_STATE_STENCIL_WRITE_MASK:
  3616. return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK";
  3617. case VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT:
  3618. return "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT";
  3619. case VK_DYNAMIC_STATE_VERTEX_INPUT_EXT:
  3620. return "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT";
  3621. case VK_DYNAMIC_STATE_VIEWPORT:
  3622. return "VK_DYNAMIC_STATE_VIEWPORT";
  3623. case VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV:
  3624. return "VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV";
  3625. case VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV:
  3626. return "VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV";
  3627. case VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT:
  3628. return "VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT";
  3629. case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV:
  3630. return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV";
  3631. default:
  3632. return "Unhandled VkDynamicState";
  3633. }
  3634. }
  3635. static inline const char* string_VkFrontFace(VkFrontFace input_value)
  3636. {
  3637. switch (input_value)
  3638. {
  3639. case VK_FRONT_FACE_CLOCKWISE:
  3640. return "VK_FRONT_FACE_CLOCKWISE";
  3641. case VK_FRONT_FACE_COUNTER_CLOCKWISE:
  3642. return "VK_FRONT_FACE_COUNTER_CLOCKWISE";
  3643. default:
  3644. return "Unhandled VkFrontFace";
  3645. }
  3646. }
  3647. static inline const char* string_VkVertexInputRate(VkVertexInputRate input_value)
  3648. {
  3649. switch (input_value)
  3650. {
  3651. case VK_VERTEX_INPUT_RATE_INSTANCE:
  3652. return "VK_VERTEX_INPUT_RATE_INSTANCE";
  3653. case VK_VERTEX_INPUT_RATE_VERTEX:
  3654. return "VK_VERTEX_INPUT_RATE_VERTEX";
  3655. default:
  3656. return "Unhandled VkVertexInputRate";
  3657. }
  3658. }
  3659. static inline const char* string_VkPrimitiveTopology(VkPrimitiveTopology input_value)
  3660. {
  3661. switch (input_value)
  3662. {
  3663. case VK_PRIMITIVE_TOPOLOGY_LINE_LIST:
  3664. return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST";
  3665. case VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY:
  3666. return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY";
  3667. case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP:
  3668. return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP";
  3669. case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY:
  3670. return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY";
  3671. case VK_PRIMITIVE_TOPOLOGY_PATCH_LIST:
  3672. return "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST";
  3673. case VK_PRIMITIVE_TOPOLOGY_POINT_LIST:
  3674. return "VK_PRIMITIVE_TOPOLOGY_POINT_LIST";
  3675. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN:
  3676. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN";
  3677. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST:
  3678. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST";
  3679. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY:
  3680. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY";
  3681. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP:
  3682. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP";
  3683. case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY:
  3684. return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY";
  3685. default:
  3686. return "Unhandled VkPrimitiveTopology";
  3687. }
  3688. }
  3689. static inline const char* string_VkPolygonMode(VkPolygonMode input_value)
  3690. {
  3691. switch (input_value)
  3692. {
  3693. case VK_POLYGON_MODE_FILL:
  3694. return "VK_POLYGON_MODE_FILL";
  3695. case VK_POLYGON_MODE_FILL_RECTANGLE_NV:
  3696. return "VK_POLYGON_MODE_FILL_RECTANGLE_NV";
  3697. case VK_POLYGON_MODE_LINE:
  3698. return "VK_POLYGON_MODE_LINE";
  3699. case VK_POLYGON_MODE_POINT:
  3700. return "VK_POLYGON_MODE_POINT";
  3701. default:
  3702. return "Unhandled VkPolygonMode";
  3703. }
  3704. }
  3705. static inline const char* string_VkStencilOp(VkStencilOp input_value)
  3706. {
  3707. switch (input_value)
  3708. {
  3709. case VK_STENCIL_OP_DECREMENT_AND_CLAMP:
  3710. return "VK_STENCIL_OP_DECREMENT_AND_CLAMP";
  3711. case VK_STENCIL_OP_DECREMENT_AND_WRAP:
  3712. return "VK_STENCIL_OP_DECREMENT_AND_WRAP";
  3713. case VK_STENCIL_OP_INCREMENT_AND_CLAMP:
  3714. return "VK_STENCIL_OP_INCREMENT_AND_CLAMP";
  3715. case VK_STENCIL_OP_INCREMENT_AND_WRAP:
  3716. return "VK_STENCIL_OP_INCREMENT_AND_WRAP";
  3717. case VK_STENCIL_OP_INVERT:
  3718. return "VK_STENCIL_OP_INVERT";
  3719. case VK_STENCIL_OP_KEEP:
  3720. return "VK_STENCIL_OP_KEEP";
  3721. case VK_STENCIL_OP_REPLACE:
  3722. return "VK_STENCIL_OP_REPLACE";
  3723. case VK_STENCIL_OP_ZERO:
  3724. return "VK_STENCIL_OP_ZERO";
  3725. default:
  3726. return "Unhandled VkStencilOp";
  3727. }
  3728. }
  3729. static inline const char* string_VkLogicOp(VkLogicOp input_value)
  3730. {
  3731. switch (input_value)
  3732. {
  3733. case VK_LOGIC_OP_AND:
  3734. return "VK_LOGIC_OP_AND";
  3735. case VK_LOGIC_OP_AND_INVERTED:
  3736. return "VK_LOGIC_OP_AND_INVERTED";
  3737. case VK_LOGIC_OP_AND_REVERSE:
  3738. return "VK_LOGIC_OP_AND_REVERSE";
  3739. case VK_LOGIC_OP_CLEAR:
  3740. return "VK_LOGIC_OP_CLEAR";
  3741. case VK_LOGIC_OP_COPY:
  3742. return "VK_LOGIC_OP_COPY";
  3743. case VK_LOGIC_OP_COPY_INVERTED:
  3744. return "VK_LOGIC_OP_COPY_INVERTED";
  3745. case VK_LOGIC_OP_EQUIVALENT:
  3746. return "VK_LOGIC_OP_EQUIVALENT";
  3747. case VK_LOGIC_OP_INVERT:
  3748. return "VK_LOGIC_OP_INVERT";
  3749. case VK_LOGIC_OP_NAND:
  3750. return "VK_LOGIC_OP_NAND";
  3751. case VK_LOGIC_OP_NOR:
  3752. return "VK_LOGIC_OP_NOR";
  3753. case VK_LOGIC_OP_NO_OP:
  3754. return "VK_LOGIC_OP_NO_OP";
  3755. case VK_LOGIC_OP_OR:
  3756. return "VK_LOGIC_OP_OR";
  3757. case VK_LOGIC_OP_OR_INVERTED:
  3758. return "VK_LOGIC_OP_OR_INVERTED";
  3759. case VK_LOGIC_OP_OR_REVERSE:
  3760. return "VK_LOGIC_OP_OR_REVERSE";
  3761. case VK_LOGIC_OP_SET:
  3762. return "VK_LOGIC_OP_SET";
  3763. case VK_LOGIC_OP_XOR:
  3764. return "VK_LOGIC_OP_XOR";
  3765. default:
  3766. return "Unhandled VkLogicOp";
  3767. }
  3768. }
  3769. static inline const char* string_VkBorderColor(VkBorderColor input_value)
  3770. {
  3771. switch (input_value)
  3772. {
  3773. case VK_BORDER_COLOR_FLOAT_CUSTOM_EXT:
  3774. return "VK_BORDER_COLOR_FLOAT_CUSTOM_EXT";
  3775. case VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK:
  3776. return "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK";
  3777. case VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE:
  3778. return "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE";
  3779. case VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK:
  3780. return "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK";
  3781. case VK_BORDER_COLOR_INT_CUSTOM_EXT:
  3782. return "VK_BORDER_COLOR_INT_CUSTOM_EXT";
  3783. case VK_BORDER_COLOR_INT_OPAQUE_BLACK:
  3784. return "VK_BORDER_COLOR_INT_OPAQUE_BLACK";
  3785. case VK_BORDER_COLOR_INT_OPAQUE_WHITE:
  3786. return "VK_BORDER_COLOR_INT_OPAQUE_WHITE";
  3787. case VK_BORDER_COLOR_INT_TRANSPARENT_BLACK:
  3788. return "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK";
  3789. default:
  3790. return "Unhandled VkBorderColor";
  3791. }
  3792. }
  3793. static inline const char* string_VkFilter(VkFilter input_value)
  3794. {
  3795. switch (input_value)
  3796. {
  3797. case VK_FILTER_CUBIC_IMG:
  3798. return "VK_FILTER_CUBIC_IMG";
  3799. case VK_FILTER_LINEAR:
  3800. return "VK_FILTER_LINEAR";
  3801. case VK_FILTER_NEAREST:
  3802. return "VK_FILTER_NEAREST";
  3803. default:
  3804. return "Unhandled VkFilter";
  3805. }
  3806. }
  3807. static inline const char* string_VkSamplerAddressMode(VkSamplerAddressMode input_value)
  3808. {
  3809. switch (input_value)
  3810. {
  3811. case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER:
  3812. return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER";
  3813. case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE:
  3814. return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE";
  3815. case VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT:
  3816. return "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT";
  3817. case VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE:
  3818. return "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE";
  3819. case VK_SAMPLER_ADDRESS_MODE_REPEAT:
  3820. return "VK_SAMPLER_ADDRESS_MODE_REPEAT";
  3821. default:
  3822. return "Unhandled VkSamplerAddressMode";
  3823. }
  3824. }
  3825. static inline const char* string_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits input_value)
  3826. {
  3827. switch (input_value)
  3828. {
  3829. case VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT:
  3830. return "VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT";
  3831. case VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT:
  3832. return "VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT";
  3833. default:
  3834. return "Unhandled VkSamplerCreateFlagBits";
  3835. }
  3836. }
  3837. static inline std::string string_VkSamplerCreateFlags(VkSamplerCreateFlags input_value)
  3838. {
  3839. std::string ret;
  3840. int index = 0;
  3841. while(input_value) {
  3842. if (input_value & 1) {
  3843. if( !ret.empty()) ret.append("|");
  3844. ret.append(string_VkSamplerCreateFlagBits(static_cast<VkSamplerCreateFlagBits>(1U << index)));
  3845. }
  3846. ++index;
  3847. input_value >>= 1;
  3848. }
  3849. if( ret.empty()) ret.append(string_VkSamplerCreateFlagBits(static_cast<VkSamplerCreateFlagBits>(0)));
  3850. return ret;
  3851. }
  3852. static inline const char* string_VkSamplerMipmapMode(VkSamplerMipmapMode input_value)
  3853. {
  3854. switch (input_value)
  3855. {
  3856. case VK_SAMPLER_MIPMAP_MODE_LINEAR:
  3857. return "VK_SAMPLER_MIPMAP_MODE_LINEAR";
  3858. case VK_SAMPLER_MIPMAP_MODE_NEAREST:
  3859. return "VK_SAMPLER_MIPMAP_MODE_NEAREST";
  3860. default:
  3861. return "Unhandled VkSamplerMipmapMode";
  3862. }
  3863. }
  3864. static inline const char* string_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits input_value)
  3865. {
  3866. switch (input_value)
  3867. {
  3868. case VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT:
  3869. return "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT";
  3870. case VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE:
  3871. return "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE";
  3872. case VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT:
  3873. return "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT";
  3874. default:
  3875. return "Unhandled VkDescriptorPoolCreateFlagBits";
  3876. }
  3877. }
  3878. static inline std::string string_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags input_value)
  3879. {
  3880. std::string ret;
  3881. int index = 0;
  3882. while(input_value) {
  3883. if (input_value & 1) {
  3884. if( !ret.empty()) ret.append("|");
  3885. ret.append(string_VkDescriptorPoolCreateFlagBits(static_cast<VkDescriptorPoolCreateFlagBits>(1U << index)));
  3886. }
  3887. ++index;
  3888. input_value >>= 1;
  3889. }
  3890. if( ret.empty()) ret.append(string_VkDescriptorPoolCreateFlagBits(static_cast<VkDescriptorPoolCreateFlagBits>(0)));
  3891. return ret;
  3892. }
  3893. static inline const char* string_VkDescriptorType(VkDescriptorType input_value)
  3894. {
  3895. switch (input_value)
  3896. {
  3897. case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR:
  3898. return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR";
  3899. case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:
  3900. return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV";
  3901. case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
  3902. return "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER";
  3903. case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT:
  3904. return "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT";
  3905. case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
  3906. return "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT";
  3907. case VK_DESCRIPTOR_TYPE_MUTABLE_VALVE:
  3908. return "VK_DESCRIPTOR_TYPE_MUTABLE_VALVE";
  3909. case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
  3910. return "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE";
  3911. case VK_DESCRIPTOR_TYPE_SAMPLER:
  3912. return "VK_DESCRIPTOR_TYPE_SAMPLER";
  3913. case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER:
  3914. return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER";
  3915. case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:
  3916. return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC";
  3917. case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE:
  3918. return "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE";
  3919. case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
  3920. return "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER";
  3921. case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
  3922. return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER";
  3923. case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:
  3924. return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC";
  3925. case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
  3926. return "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER";
  3927. default:
  3928. return "Unhandled VkDescriptorType";
  3929. }
  3930. }
  3931. static inline const char* string_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits input_value)
  3932. {
  3933. switch (input_value)
  3934. {
  3935. case VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE:
  3936. return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE";
  3937. case VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR:
  3938. return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR";
  3939. case VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT:
  3940. return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT";
  3941. default:
  3942. return "Unhandled VkDescriptorSetLayoutCreateFlagBits";
  3943. }
  3944. }
  3945. static inline std::string string_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags 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_VkDescriptorSetLayoutCreateFlagBits(static_cast<VkDescriptorSetLayoutCreateFlagBits>(1U << index)));
  3953. }
  3954. ++index;
  3955. input_value >>= 1;
  3956. }
  3957. if( ret.empty()) ret.append(string_VkDescriptorSetLayoutCreateFlagBits(static_cast<VkDescriptorSetLayoutCreateFlagBits>(0)));
  3958. return ret;
  3959. }
  3960. static inline const char* string_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits input_value)
  3961. {
  3962. switch (input_value)
  3963. {
  3964. case VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT:
  3965. return "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT";
  3966. default:
  3967. return "Unhandled VkAttachmentDescriptionFlagBits";
  3968. }
  3969. }
  3970. static inline std::string string_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags input_value)
  3971. {
  3972. std::string ret;
  3973. int index = 0;
  3974. while(input_value) {
  3975. if (input_value & 1) {
  3976. if( !ret.empty()) ret.append("|");
  3977. ret.append(string_VkAttachmentDescriptionFlagBits(static_cast<VkAttachmentDescriptionFlagBits>(1U << index)));
  3978. }
  3979. ++index;
  3980. input_value >>= 1;
  3981. }
  3982. if( ret.empty()) ret.append(string_VkAttachmentDescriptionFlagBits(static_cast<VkAttachmentDescriptionFlagBits>(0)));
  3983. return ret;
  3984. }
  3985. static inline const char* string_VkAttachmentLoadOp(VkAttachmentLoadOp input_value)
  3986. {
  3987. switch (input_value)
  3988. {
  3989. case VK_ATTACHMENT_LOAD_OP_CLEAR:
  3990. return "VK_ATTACHMENT_LOAD_OP_CLEAR";
  3991. case VK_ATTACHMENT_LOAD_OP_DONT_CARE:
  3992. return "VK_ATTACHMENT_LOAD_OP_DONT_CARE";
  3993. case VK_ATTACHMENT_LOAD_OP_LOAD:
  3994. return "VK_ATTACHMENT_LOAD_OP_LOAD";
  3995. case VK_ATTACHMENT_LOAD_OP_NONE_EXT:
  3996. return "VK_ATTACHMENT_LOAD_OP_NONE_EXT";
  3997. default:
  3998. return "Unhandled VkAttachmentLoadOp";
  3999. }
  4000. }
  4001. static inline const char* string_VkAttachmentStoreOp(VkAttachmentStoreOp input_value)
  4002. {
  4003. switch (input_value)
  4004. {
  4005. case VK_ATTACHMENT_STORE_OP_DONT_CARE:
  4006. return "VK_ATTACHMENT_STORE_OP_DONT_CARE";
  4007. case VK_ATTACHMENT_STORE_OP_NONE_EXT:
  4008. return "VK_ATTACHMENT_STORE_OP_NONE_EXT";
  4009. case VK_ATTACHMENT_STORE_OP_STORE:
  4010. return "VK_ATTACHMENT_STORE_OP_STORE";
  4011. default:
  4012. return "Unhandled VkAttachmentStoreOp";
  4013. }
  4014. }
  4015. static inline const char* string_VkDependencyFlagBits(VkDependencyFlagBits input_value)
  4016. {
  4017. switch (input_value)
  4018. {
  4019. case VK_DEPENDENCY_BY_REGION_BIT:
  4020. return "VK_DEPENDENCY_BY_REGION_BIT";
  4021. case VK_DEPENDENCY_DEVICE_GROUP_BIT:
  4022. return "VK_DEPENDENCY_DEVICE_GROUP_BIT";
  4023. case VK_DEPENDENCY_VIEW_LOCAL_BIT:
  4024. return "VK_DEPENDENCY_VIEW_LOCAL_BIT";
  4025. default:
  4026. return "Unhandled VkDependencyFlagBits";
  4027. }
  4028. }
  4029. static inline std::string string_VkDependencyFlags(VkDependencyFlags input_value)
  4030. {
  4031. std::string ret;
  4032. int index = 0;
  4033. while(input_value) {
  4034. if (input_value & 1) {
  4035. if( !ret.empty()) ret.append("|");
  4036. ret.append(string_VkDependencyFlagBits(static_cast<VkDependencyFlagBits>(1U << index)));
  4037. }
  4038. ++index;
  4039. input_value >>= 1;
  4040. }
  4041. if( ret.empty()) ret.append(string_VkDependencyFlagBits(static_cast<VkDependencyFlagBits>(0)));
  4042. return ret;
  4043. }
  4044. static inline const char* string_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits input_value)
  4045. {
  4046. switch (input_value)
  4047. {
  4048. case VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT:
  4049. return "VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT";
  4050. default:
  4051. return "Unhandled VkFramebufferCreateFlagBits";
  4052. }
  4053. }
  4054. static inline std::string string_VkFramebufferCreateFlags(VkFramebufferCreateFlags input_value)
  4055. {
  4056. std::string ret;
  4057. int index = 0;
  4058. while(input_value) {
  4059. if (input_value & 1) {
  4060. if( !ret.empty()) ret.append("|");
  4061. ret.append(string_VkFramebufferCreateFlagBits(static_cast<VkFramebufferCreateFlagBits>(1U << index)));
  4062. }
  4063. ++index;
  4064. input_value >>= 1;
  4065. }
  4066. if( ret.empty()) ret.append(string_VkFramebufferCreateFlagBits(static_cast<VkFramebufferCreateFlagBits>(0)));
  4067. return ret;
  4068. }
  4069. static inline const char* string_VkPipelineBindPoint(VkPipelineBindPoint input_value)
  4070. {
  4071. switch (input_value)
  4072. {
  4073. case VK_PIPELINE_BIND_POINT_COMPUTE:
  4074. return "VK_PIPELINE_BIND_POINT_COMPUTE";
  4075. case VK_PIPELINE_BIND_POINT_GRAPHICS:
  4076. return "VK_PIPELINE_BIND_POINT_GRAPHICS";
  4077. case VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR:
  4078. return "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR";
  4079. case VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI:
  4080. return "VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI";
  4081. default:
  4082. return "Unhandled VkPipelineBindPoint";
  4083. }
  4084. }
  4085. static inline const char* string_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits input_value)
  4086. {
  4087. switch (input_value)
  4088. {
  4089. case VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM:
  4090. return "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM";
  4091. default:
  4092. return "Unhandled VkRenderPassCreateFlagBits";
  4093. }
  4094. }
  4095. static inline std::string string_VkRenderPassCreateFlags(VkRenderPassCreateFlags input_value)
  4096. {
  4097. std::string ret;
  4098. int index = 0;
  4099. while(input_value) {
  4100. if (input_value & 1) {
  4101. if( !ret.empty()) ret.append("|");
  4102. ret.append(string_VkRenderPassCreateFlagBits(static_cast<VkRenderPassCreateFlagBits>(1U << index)));
  4103. }
  4104. ++index;
  4105. input_value >>= 1;
  4106. }
  4107. if( ret.empty()) ret.append(string_VkRenderPassCreateFlagBits(static_cast<VkRenderPassCreateFlagBits>(0)));
  4108. return ret;
  4109. }
  4110. static inline const char* string_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits input_value)
  4111. {
  4112. switch (input_value)
  4113. {
  4114. case VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM:
  4115. return "VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM";
  4116. case VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX:
  4117. return "VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX";
  4118. case VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX:
  4119. return "VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX";
  4120. case VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM:
  4121. return "VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM";
  4122. default:
  4123. return "Unhandled VkSubpassDescriptionFlagBits";
  4124. }
  4125. }
  4126. static inline std::string string_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags input_value)
  4127. {
  4128. std::string ret;
  4129. int index = 0;
  4130. while(input_value) {
  4131. if (input_value & 1) {
  4132. if( !ret.empty()) ret.append("|");
  4133. ret.append(string_VkSubpassDescriptionFlagBits(static_cast<VkSubpassDescriptionFlagBits>(1U << index)));
  4134. }
  4135. ++index;
  4136. input_value >>= 1;
  4137. }
  4138. if( ret.empty()) ret.append(string_VkSubpassDescriptionFlagBits(static_cast<VkSubpassDescriptionFlagBits>(0)));
  4139. return ret;
  4140. }
  4141. static inline const char* string_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits input_value)
  4142. {
  4143. switch (input_value)
  4144. {
  4145. case VK_COMMAND_POOL_CREATE_PROTECTED_BIT:
  4146. return "VK_COMMAND_POOL_CREATE_PROTECTED_BIT";
  4147. case VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT:
  4148. return "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT";
  4149. case VK_COMMAND_POOL_CREATE_TRANSIENT_BIT:
  4150. return "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT";
  4151. default:
  4152. return "Unhandled VkCommandPoolCreateFlagBits";
  4153. }
  4154. }
  4155. static inline std::string string_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags input_value)
  4156. {
  4157. std::string ret;
  4158. int index = 0;
  4159. while(input_value) {
  4160. if (input_value & 1) {
  4161. if( !ret.empty()) ret.append("|");
  4162. ret.append(string_VkCommandPoolCreateFlagBits(static_cast<VkCommandPoolCreateFlagBits>(1U << index)));
  4163. }
  4164. ++index;
  4165. input_value >>= 1;
  4166. }
  4167. if( ret.empty()) ret.append(string_VkCommandPoolCreateFlagBits(static_cast<VkCommandPoolCreateFlagBits>(0)));
  4168. return ret;
  4169. }
  4170. static inline const char* string_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits input_value)
  4171. {
  4172. switch (input_value)
  4173. {
  4174. case VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT:
  4175. return "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT";
  4176. default:
  4177. return "Unhandled VkCommandPoolResetFlagBits";
  4178. }
  4179. }
  4180. static inline std::string string_VkCommandPoolResetFlags(VkCommandPoolResetFlags input_value)
  4181. {
  4182. std::string ret;
  4183. int index = 0;
  4184. while(input_value) {
  4185. if (input_value & 1) {
  4186. if( !ret.empty()) ret.append("|");
  4187. ret.append(string_VkCommandPoolResetFlagBits(static_cast<VkCommandPoolResetFlagBits>(1U << index)));
  4188. }
  4189. ++index;
  4190. input_value >>= 1;
  4191. }
  4192. if( ret.empty()) ret.append(string_VkCommandPoolResetFlagBits(static_cast<VkCommandPoolResetFlagBits>(0)));
  4193. return ret;
  4194. }
  4195. static inline const char* string_VkCommandBufferLevel(VkCommandBufferLevel input_value)
  4196. {
  4197. switch (input_value)
  4198. {
  4199. case VK_COMMAND_BUFFER_LEVEL_PRIMARY:
  4200. return "VK_COMMAND_BUFFER_LEVEL_PRIMARY";
  4201. case VK_COMMAND_BUFFER_LEVEL_SECONDARY:
  4202. return "VK_COMMAND_BUFFER_LEVEL_SECONDARY";
  4203. default:
  4204. return "Unhandled VkCommandBufferLevel";
  4205. }
  4206. }
  4207. static inline const char* string_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits input_value)
  4208. {
  4209. switch (input_value)
  4210. {
  4211. case VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT:
  4212. return "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT";
  4213. case VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT:
  4214. return "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT";
  4215. case VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT:
  4216. return "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT";
  4217. default:
  4218. return "Unhandled VkCommandBufferUsageFlagBits";
  4219. }
  4220. }
  4221. static inline std::string string_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags input_value)
  4222. {
  4223. std::string ret;
  4224. int index = 0;
  4225. while(input_value) {
  4226. if (input_value & 1) {
  4227. if( !ret.empty()) ret.append("|");
  4228. ret.append(string_VkCommandBufferUsageFlagBits(static_cast<VkCommandBufferUsageFlagBits>(1U << index)));
  4229. }
  4230. ++index;
  4231. input_value >>= 1;
  4232. }
  4233. if( ret.empty()) ret.append(string_VkCommandBufferUsageFlagBits(static_cast<VkCommandBufferUsageFlagBits>(0)));
  4234. return ret;
  4235. }
  4236. static inline const char* string_VkQueryControlFlagBits(VkQueryControlFlagBits input_value)
  4237. {
  4238. switch (input_value)
  4239. {
  4240. case VK_QUERY_CONTROL_PRECISE_BIT:
  4241. return "VK_QUERY_CONTROL_PRECISE_BIT";
  4242. default:
  4243. return "Unhandled VkQueryControlFlagBits";
  4244. }
  4245. }
  4246. static inline std::string string_VkQueryControlFlags(VkQueryControlFlags input_value)
  4247. {
  4248. std::string ret;
  4249. int index = 0;
  4250. while(input_value) {
  4251. if (input_value & 1) {
  4252. if( !ret.empty()) ret.append("|");
  4253. ret.append(string_VkQueryControlFlagBits(static_cast<VkQueryControlFlagBits>(1U << index)));
  4254. }
  4255. ++index;
  4256. input_value >>= 1;
  4257. }
  4258. if( ret.empty()) ret.append(string_VkQueryControlFlagBits(static_cast<VkQueryControlFlagBits>(0)));
  4259. return ret;
  4260. }
  4261. static inline const char* string_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits input_value)
  4262. {
  4263. switch (input_value)
  4264. {
  4265. case VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT:
  4266. return "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT";
  4267. default:
  4268. return "Unhandled VkCommandBufferResetFlagBits";
  4269. }
  4270. }
  4271. static inline std::string string_VkCommandBufferResetFlags(VkCommandBufferResetFlags input_value)
  4272. {
  4273. std::string ret;
  4274. int index = 0;
  4275. while(input_value) {
  4276. if (input_value & 1) {
  4277. if( !ret.empty()) ret.append("|");
  4278. ret.append(string_VkCommandBufferResetFlagBits(static_cast<VkCommandBufferResetFlagBits>(1U << index)));
  4279. }
  4280. ++index;
  4281. input_value >>= 1;
  4282. }
  4283. if( ret.empty()) ret.append(string_VkCommandBufferResetFlagBits(static_cast<VkCommandBufferResetFlagBits>(0)));
  4284. return ret;
  4285. }
  4286. static inline const char* string_VkIndexType(VkIndexType input_value)
  4287. {
  4288. switch (input_value)
  4289. {
  4290. case VK_INDEX_TYPE_NONE_KHR:
  4291. return "VK_INDEX_TYPE_NONE_KHR";
  4292. case VK_INDEX_TYPE_UINT16:
  4293. return "VK_INDEX_TYPE_UINT16";
  4294. case VK_INDEX_TYPE_UINT32:
  4295. return "VK_INDEX_TYPE_UINT32";
  4296. case VK_INDEX_TYPE_UINT8_EXT:
  4297. return "VK_INDEX_TYPE_UINT8_EXT";
  4298. default:
  4299. return "Unhandled VkIndexType";
  4300. }
  4301. }
  4302. static inline const char* string_VkStencilFaceFlagBits(VkStencilFaceFlagBits input_value)
  4303. {
  4304. switch (input_value)
  4305. {
  4306. case VK_STENCIL_FACE_BACK_BIT:
  4307. return "VK_STENCIL_FACE_BACK_BIT";
  4308. case VK_STENCIL_FACE_FRONT_AND_BACK:
  4309. return "VK_STENCIL_FACE_FRONT_AND_BACK";
  4310. case VK_STENCIL_FACE_FRONT_BIT:
  4311. return "VK_STENCIL_FACE_FRONT_BIT";
  4312. default:
  4313. return "Unhandled VkStencilFaceFlagBits";
  4314. }
  4315. }
  4316. static inline std::string string_VkStencilFaceFlags(VkStencilFaceFlags input_value)
  4317. {
  4318. std::string ret;
  4319. int index = 0;
  4320. while(input_value) {
  4321. if (input_value & 1) {
  4322. if( !ret.empty()) ret.append("|");
  4323. ret.append(string_VkStencilFaceFlagBits(static_cast<VkStencilFaceFlagBits>(1U << index)));
  4324. }
  4325. ++index;
  4326. input_value >>= 1;
  4327. }
  4328. if( ret.empty()) ret.append(string_VkStencilFaceFlagBits(static_cast<VkStencilFaceFlagBits>(0)));
  4329. return ret;
  4330. }
  4331. static inline const char* string_VkSubpassContents(VkSubpassContents input_value)
  4332. {
  4333. switch (input_value)
  4334. {
  4335. case VK_SUBPASS_CONTENTS_INLINE:
  4336. return "VK_SUBPASS_CONTENTS_INLINE";
  4337. case VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS:
  4338. return "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS";
  4339. default:
  4340. return "Unhandled VkSubpassContents";
  4341. }
  4342. }
  4343. static inline const char* string_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits input_value)
  4344. {
  4345. switch (input_value)
  4346. {
  4347. case VK_SUBGROUP_FEATURE_ARITHMETIC_BIT:
  4348. return "VK_SUBGROUP_FEATURE_ARITHMETIC_BIT";
  4349. case VK_SUBGROUP_FEATURE_BALLOT_BIT:
  4350. return "VK_SUBGROUP_FEATURE_BALLOT_BIT";
  4351. case VK_SUBGROUP_FEATURE_BASIC_BIT:
  4352. return "VK_SUBGROUP_FEATURE_BASIC_BIT";
  4353. case VK_SUBGROUP_FEATURE_CLUSTERED_BIT:
  4354. return "VK_SUBGROUP_FEATURE_CLUSTERED_BIT";
  4355. case VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV:
  4356. return "VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV";
  4357. case VK_SUBGROUP_FEATURE_QUAD_BIT:
  4358. return "VK_SUBGROUP_FEATURE_QUAD_BIT";
  4359. case VK_SUBGROUP_FEATURE_SHUFFLE_BIT:
  4360. return "VK_SUBGROUP_FEATURE_SHUFFLE_BIT";
  4361. case VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT:
  4362. return "VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT";
  4363. case VK_SUBGROUP_FEATURE_VOTE_BIT:
  4364. return "VK_SUBGROUP_FEATURE_VOTE_BIT";
  4365. default:
  4366. return "Unhandled VkSubgroupFeatureFlagBits";
  4367. }
  4368. }
  4369. static inline std::string string_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags input_value)
  4370. {
  4371. std::string ret;
  4372. int index = 0;
  4373. while(input_value) {
  4374. if (input_value & 1) {
  4375. if( !ret.empty()) ret.append("|");
  4376. ret.append(string_VkSubgroupFeatureFlagBits(static_cast<VkSubgroupFeatureFlagBits>(1U << index)));
  4377. }
  4378. ++index;
  4379. input_value >>= 1;
  4380. }
  4381. if( ret.empty()) ret.append(string_VkSubgroupFeatureFlagBits(static_cast<VkSubgroupFeatureFlagBits>(0)));
  4382. return ret;
  4383. }
  4384. static inline const char* string_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits input_value)
  4385. {
  4386. switch (input_value)
  4387. {
  4388. case VK_PEER_MEMORY_FEATURE_COPY_DST_BIT:
  4389. return "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT";
  4390. case VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT:
  4391. return "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT";
  4392. case VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT:
  4393. return "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT";
  4394. case VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT:
  4395. return "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT";
  4396. default:
  4397. return "Unhandled VkPeerMemoryFeatureFlagBits";
  4398. }
  4399. }
  4400. static inline std::string string_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags input_value)
  4401. {
  4402. std::string ret;
  4403. int index = 0;
  4404. while(input_value) {
  4405. if (input_value & 1) {
  4406. if( !ret.empty()) ret.append("|");
  4407. ret.append(string_VkPeerMemoryFeatureFlagBits(static_cast<VkPeerMemoryFeatureFlagBits>(1U << index)));
  4408. }
  4409. ++index;
  4410. input_value >>= 1;
  4411. }
  4412. if( ret.empty()) ret.append(string_VkPeerMemoryFeatureFlagBits(static_cast<VkPeerMemoryFeatureFlagBits>(0)));
  4413. return ret;
  4414. }
  4415. static inline const char* string_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits input_value)
  4416. {
  4417. switch (input_value)
  4418. {
  4419. case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT:
  4420. return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT";
  4421. case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
  4422. return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
  4423. case VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT:
  4424. return "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT";
  4425. default:
  4426. return "Unhandled VkMemoryAllocateFlagBits";
  4427. }
  4428. }
  4429. static inline std::string string_VkMemoryAllocateFlags(VkMemoryAllocateFlags input_value)
  4430. {
  4431. std::string ret;
  4432. int index = 0;
  4433. while(input_value) {
  4434. if (input_value & 1) {
  4435. if( !ret.empty()) ret.append("|");
  4436. ret.append(string_VkMemoryAllocateFlagBits(static_cast<VkMemoryAllocateFlagBits>(1U << index)));
  4437. }
  4438. ++index;
  4439. input_value >>= 1;
  4440. }
  4441. if( ret.empty()) ret.append(string_VkMemoryAllocateFlagBits(static_cast<VkMemoryAllocateFlagBits>(0)));
  4442. return ret;
  4443. }
  4444. static inline const char* string_VkPointClippingBehavior(VkPointClippingBehavior input_value)
  4445. {
  4446. switch (input_value)
  4447. {
  4448. case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES:
  4449. return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES";
  4450. case VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY:
  4451. return "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY";
  4452. default:
  4453. return "Unhandled VkPointClippingBehavior";
  4454. }
  4455. }
  4456. static inline const char* string_VkTessellationDomainOrigin(VkTessellationDomainOrigin input_value)
  4457. {
  4458. switch (input_value)
  4459. {
  4460. case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT:
  4461. return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT";
  4462. case VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT:
  4463. return "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT";
  4464. default:
  4465. return "Unhandled VkTessellationDomainOrigin";
  4466. }
  4467. }
  4468. static inline const char* string_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion input_value)
  4469. {
  4470. switch (input_value)
  4471. {
  4472. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
  4473. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY";
  4474. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020:
  4475. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020";
  4476. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601:
  4477. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601";
  4478. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709:
  4479. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709";
  4480. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY:
  4481. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY";
  4482. default:
  4483. return "Unhandled VkSamplerYcbcrModelConversion";
  4484. }
  4485. }
  4486. static inline const char* string_VkSamplerYcbcrRange(VkSamplerYcbcrRange input_value)
  4487. {
  4488. switch (input_value)
  4489. {
  4490. case VK_SAMPLER_YCBCR_RANGE_ITU_FULL:
  4491. return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL";
  4492. case VK_SAMPLER_YCBCR_RANGE_ITU_NARROW:
  4493. return "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW";
  4494. default:
  4495. return "Unhandled VkSamplerYcbcrRange";
  4496. }
  4497. }
  4498. static inline const char* string_VkChromaLocation(VkChromaLocation input_value)
  4499. {
  4500. switch (input_value)
  4501. {
  4502. case VK_CHROMA_LOCATION_COSITED_EVEN:
  4503. return "VK_CHROMA_LOCATION_COSITED_EVEN";
  4504. case VK_CHROMA_LOCATION_MIDPOINT:
  4505. return "VK_CHROMA_LOCATION_MIDPOINT";
  4506. default:
  4507. return "Unhandled VkChromaLocation";
  4508. }
  4509. }
  4510. static inline const char* string_VkDescriptorUpdateTemplateType(VkDescriptorUpdateTemplateType input_value)
  4511. {
  4512. switch (input_value)
  4513. {
  4514. case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET:
  4515. return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET";
  4516. case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR:
  4517. return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
  4518. default:
  4519. return "Unhandled VkDescriptorUpdateTemplateType";
  4520. }
  4521. }
  4522. static inline const char* string_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits input_value)
  4523. {
  4524. switch (input_value)
  4525. {
  4526. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:
  4527. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID";
  4528. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT:
  4529. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT";
  4530. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT:
  4531. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT";
  4532. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT:
  4533. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT";
  4534. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT:
  4535. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT";
  4536. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT:
  4537. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT";
  4538. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT:
  4539. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT";
  4540. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT:
  4541. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT";
  4542. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT:
  4543. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT";
  4544. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  4545. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  4546. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  4547. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  4548. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV:
  4549. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV";
  4550. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA:
  4551. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA";
  4552. default:
  4553. return "Unhandled VkExternalMemoryHandleTypeFlagBits";
  4554. }
  4555. }
  4556. static inline std::string string_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlags input_value)
  4557. {
  4558. std::string ret;
  4559. int index = 0;
  4560. while(input_value) {
  4561. if (input_value & 1) {
  4562. if( !ret.empty()) ret.append("|");
  4563. ret.append(string_VkExternalMemoryHandleTypeFlagBits(static_cast<VkExternalMemoryHandleTypeFlagBits>(1U << index)));
  4564. }
  4565. ++index;
  4566. input_value >>= 1;
  4567. }
  4568. if( ret.empty()) ret.append(string_VkExternalMemoryHandleTypeFlagBits(static_cast<VkExternalMemoryHandleTypeFlagBits>(0)));
  4569. return ret;
  4570. }
  4571. static inline const char* string_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits input_value)
  4572. {
  4573. switch (input_value)
  4574. {
  4575. case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT:
  4576. return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT";
  4577. case VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT:
  4578. return "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT";
  4579. case VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT:
  4580. return "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT";
  4581. default:
  4582. return "Unhandled VkExternalMemoryFeatureFlagBits";
  4583. }
  4584. }
  4585. static inline std::string string_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags input_value)
  4586. {
  4587. std::string ret;
  4588. int index = 0;
  4589. while(input_value) {
  4590. if (input_value & 1) {
  4591. if( !ret.empty()) ret.append("|");
  4592. ret.append(string_VkExternalMemoryFeatureFlagBits(static_cast<VkExternalMemoryFeatureFlagBits>(1U << index)));
  4593. }
  4594. ++index;
  4595. input_value >>= 1;
  4596. }
  4597. if( ret.empty()) ret.append(string_VkExternalMemoryFeatureFlagBits(static_cast<VkExternalMemoryFeatureFlagBits>(0)));
  4598. return ret;
  4599. }
  4600. static inline const char* string_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits input_value)
  4601. {
  4602. switch (input_value)
  4603. {
  4604. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT:
  4605. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT";
  4606. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  4607. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  4608. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  4609. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  4610. case VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT:
  4611. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT";
  4612. default:
  4613. return "Unhandled VkExternalFenceHandleTypeFlagBits";
  4614. }
  4615. }
  4616. static inline std::string string_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags 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_VkExternalFenceHandleTypeFlagBits(static_cast<VkExternalFenceHandleTypeFlagBits>(1U << index)));
  4624. }
  4625. ++index;
  4626. input_value >>= 1;
  4627. }
  4628. if( ret.empty()) ret.append(string_VkExternalFenceHandleTypeFlagBits(static_cast<VkExternalFenceHandleTypeFlagBits>(0)));
  4629. return ret;
  4630. }
  4631. static inline const char* string_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits input_value)
  4632. {
  4633. switch (input_value)
  4634. {
  4635. case VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT:
  4636. return "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT";
  4637. case VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT:
  4638. return "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT";
  4639. default:
  4640. return "Unhandled VkExternalFenceFeatureFlagBits";
  4641. }
  4642. }
  4643. static inline std::string string_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags input_value)
  4644. {
  4645. std::string ret;
  4646. int index = 0;
  4647. while(input_value) {
  4648. if (input_value & 1) {
  4649. if( !ret.empty()) ret.append("|");
  4650. ret.append(string_VkExternalFenceFeatureFlagBits(static_cast<VkExternalFenceFeatureFlagBits>(1U << index)));
  4651. }
  4652. ++index;
  4653. input_value >>= 1;
  4654. }
  4655. if( ret.empty()) ret.append(string_VkExternalFenceFeatureFlagBits(static_cast<VkExternalFenceFeatureFlagBits>(0)));
  4656. return ret;
  4657. }
  4658. static inline const char* string_VkFenceImportFlagBits(VkFenceImportFlagBits input_value)
  4659. {
  4660. switch (input_value)
  4661. {
  4662. case VK_FENCE_IMPORT_TEMPORARY_BIT:
  4663. return "VK_FENCE_IMPORT_TEMPORARY_BIT";
  4664. default:
  4665. return "Unhandled VkFenceImportFlagBits";
  4666. }
  4667. }
  4668. static inline std::string string_VkFenceImportFlags(VkFenceImportFlags input_value)
  4669. {
  4670. std::string ret;
  4671. int index = 0;
  4672. while(input_value) {
  4673. if (input_value & 1) {
  4674. if( !ret.empty()) ret.append("|");
  4675. ret.append(string_VkFenceImportFlagBits(static_cast<VkFenceImportFlagBits>(1U << index)));
  4676. }
  4677. ++index;
  4678. input_value >>= 1;
  4679. }
  4680. if( ret.empty()) ret.append(string_VkFenceImportFlagBits(static_cast<VkFenceImportFlagBits>(0)));
  4681. return ret;
  4682. }
  4683. static inline const char* string_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits input_value)
  4684. {
  4685. switch (input_value)
  4686. {
  4687. case VK_SEMAPHORE_IMPORT_TEMPORARY_BIT:
  4688. return "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT";
  4689. default:
  4690. return "Unhandled VkSemaphoreImportFlagBits";
  4691. }
  4692. }
  4693. static inline std::string string_VkSemaphoreImportFlags(VkSemaphoreImportFlags input_value)
  4694. {
  4695. std::string ret;
  4696. int index = 0;
  4697. while(input_value) {
  4698. if (input_value & 1) {
  4699. if( !ret.empty()) ret.append("|");
  4700. ret.append(string_VkSemaphoreImportFlagBits(static_cast<VkSemaphoreImportFlagBits>(1U << index)));
  4701. }
  4702. ++index;
  4703. input_value >>= 1;
  4704. }
  4705. if( ret.empty()) ret.append(string_VkSemaphoreImportFlagBits(static_cast<VkSemaphoreImportFlagBits>(0)));
  4706. return ret;
  4707. }
  4708. static inline const char* string_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits input_value)
  4709. {
  4710. switch (input_value)
  4711. {
  4712. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT:
  4713. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT";
  4714. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT:
  4715. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT";
  4716. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  4717. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  4718. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  4719. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  4720. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT:
  4721. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT";
  4722. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA:
  4723. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA";
  4724. default:
  4725. return "Unhandled VkExternalSemaphoreHandleTypeFlagBits";
  4726. }
  4727. }
  4728. static inline std::string string_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTypeFlags input_value)
  4729. {
  4730. std::string ret;
  4731. int index = 0;
  4732. while(input_value) {
  4733. if (input_value & 1) {
  4734. if( !ret.empty()) ret.append("|");
  4735. ret.append(string_VkExternalSemaphoreHandleTypeFlagBits(static_cast<VkExternalSemaphoreHandleTypeFlagBits>(1U << index)));
  4736. }
  4737. ++index;
  4738. input_value >>= 1;
  4739. }
  4740. if( ret.empty()) ret.append(string_VkExternalSemaphoreHandleTypeFlagBits(static_cast<VkExternalSemaphoreHandleTypeFlagBits>(0)));
  4741. return ret;
  4742. }
  4743. static inline const char* string_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits input_value)
  4744. {
  4745. switch (input_value)
  4746. {
  4747. case VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT:
  4748. return "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT";
  4749. case VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT:
  4750. return "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT";
  4751. default:
  4752. return "Unhandled VkExternalSemaphoreFeatureFlagBits";
  4753. }
  4754. }
  4755. static inline std::string string_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlags input_value)
  4756. {
  4757. std::string ret;
  4758. int index = 0;
  4759. while(input_value) {
  4760. if (input_value & 1) {
  4761. if( !ret.empty()) ret.append("|");
  4762. ret.append(string_VkExternalSemaphoreFeatureFlagBits(static_cast<VkExternalSemaphoreFeatureFlagBits>(1U << index)));
  4763. }
  4764. ++index;
  4765. input_value >>= 1;
  4766. }
  4767. if( ret.empty()) ret.append(string_VkExternalSemaphoreFeatureFlagBits(static_cast<VkExternalSemaphoreFeatureFlagBits>(0)));
  4768. return ret;
  4769. }
  4770. static inline const char* string_VkDriverId(VkDriverId input_value)
  4771. {
  4772. switch (input_value)
  4773. {
  4774. case VK_DRIVER_ID_AMD_OPEN_SOURCE:
  4775. return "VK_DRIVER_ID_AMD_OPEN_SOURCE";
  4776. case VK_DRIVER_ID_AMD_PROPRIETARY:
  4777. return "VK_DRIVER_ID_AMD_PROPRIETARY";
  4778. case VK_DRIVER_ID_ARM_PROPRIETARY:
  4779. return "VK_DRIVER_ID_ARM_PROPRIETARY";
  4780. case VK_DRIVER_ID_BROADCOM_PROPRIETARY:
  4781. return "VK_DRIVER_ID_BROADCOM_PROPRIETARY";
  4782. case VK_DRIVER_ID_COREAVI_PROPRIETARY:
  4783. return "VK_DRIVER_ID_COREAVI_PROPRIETARY";
  4784. case VK_DRIVER_ID_GGP_PROPRIETARY:
  4785. return "VK_DRIVER_ID_GGP_PROPRIETARY";
  4786. case VK_DRIVER_ID_GOOGLE_SWIFTSHADER:
  4787. return "VK_DRIVER_ID_GOOGLE_SWIFTSHADER";
  4788. case VK_DRIVER_ID_IMAGINATION_PROPRIETARY:
  4789. return "VK_DRIVER_ID_IMAGINATION_PROPRIETARY";
  4790. case VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA:
  4791. return "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA";
  4792. case VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS:
  4793. return "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS";
  4794. case VK_DRIVER_ID_JUICE_PROPRIETARY:
  4795. return "VK_DRIVER_ID_JUICE_PROPRIETARY";
  4796. case VK_DRIVER_ID_MESA_LLVMPIPE:
  4797. return "VK_DRIVER_ID_MESA_LLVMPIPE";
  4798. case VK_DRIVER_ID_MESA_RADV:
  4799. return "VK_DRIVER_ID_MESA_RADV";
  4800. case VK_DRIVER_ID_MOLTENVK:
  4801. return "VK_DRIVER_ID_MOLTENVK";
  4802. case VK_DRIVER_ID_NVIDIA_PROPRIETARY:
  4803. return "VK_DRIVER_ID_NVIDIA_PROPRIETARY";
  4804. case VK_DRIVER_ID_QUALCOMM_PROPRIETARY:
  4805. return "VK_DRIVER_ID_QUALCOMM_PROPRIETARY";
  4806. case VK_DRIVER_ID_VERISILICON_PROPRIETARY:
  4807. return "VK_DRIVER_ID_VERISILICON_PROPRIETARY";
  4808. default:
  4809. return "Unhandled VkDriverId";
  4810. }
  4811. }
  4812. static inline const char* string_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence input_value)
  4813. {
  4814. switch (input_value)
  4815. {
  4816. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY:
  4817. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY";
  4818. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL:
  4819. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL";
  4820. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE:
  4821. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE";
  4822. default:
  4823. return "Unhandled VkShaderFloatControlsIndependence";
  4824. }
  4825. }
  4826. static inline const char* string_VkResolveModeFlagBits(VkResolveModeFlagBits input_value)
  4827. {
  4828. switch (input_value)
  4829. {
  4830. case VK_RESOLVE_MODE_AVERAGE_BIT:
  4831. return "VK_RESOLVE_MODE_AVERAGE_BIT";
  4832. case VK_RESOLVE_MODE_MAX_BIT:
  4833. return "VK_RESOLVE_MODE_MAX_BIT";
  4834. case VK_RESOLVE_MODE_MIN_BIT:
  4835. return "VK_RESOLVE_MODE_MIN_BIT";
  4836. case VK_RESOLVE_MODE_NONE:
  4837. return "VK_RESOLVE_MODE_NONE";
  4838. case VK_RESOLVE_MODE_SAMPLE_ZERO_BIT:
  4839. return "VK_RESOLVE_MODE_SAMPLE_ZERO_BIT";
  4840. default:
  4841. return "Unhandled VkResolveModeFlagBits";
  4842. }
  4843. }
  4844. static inline std::string string_VkResolveModeFlags(VkResolveModeFlags input_value)
  4845. {
  4846. std::string ret;
  4847. int index = 0;
  4848. while(input_value) {
  4849. if (input_value & 1) {
  4850. if( !ret.empty()) ret.append("|");
  4851. ret.append(string_VkResolveModeFlagBits(static_cast<VkResolveModeFlagBits>(1U << index)));
  4852. }
  4853. ++index;
  4854. input_value >>= 1;
  4855. }
  4856. if( ret.empty()) ret.append(string_VkResolveModeFlagBits(static_cast<VkResolveModeFlagBits>(0)));
  4857. return ret;
  4858. }
  4859. static inline const char* string_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits input_value)
  4860. {
  4861. switch (input_value)
  4862. {
  4863. case VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT:
  4864. return "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT";
  4865. case VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT:
  4866. return "VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT";
  4867. case VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT:
  4868. return "VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT";
  4869. case VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT:
  4870. return "VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT";
  4871. default:
  4872. return "Unhandled VkDescriptorBindingFlagBits";
  4873. }
  4874. }
  4875. static inline std::string string_VkDescriptorBindingFlags(VkDescriptorBindingFlags input_value)
  4876. {
  4877. std::string ret;
  4878. int index = 0;
  4879. while(input_value) {
  4880. if (input_value & 1) {
  4881. if( !ret.empty()) ret.append("|");
  4882. ret.append(string_VkDescriptorBindingFlagBits(static_cast<VkDescriptorBindingFlagBits>(1U << index)));
  4883. }
  4884. ++index;
  4885. input_value >>= 1;
  4886. }
  4887. if( ret.empty()) ret.append(string_VkDescriptorBindingFlagBits(static_cast<VkDescriptorBindingFlagBits>(0)));
  4888. return ret;
  4889. }
  4890. static inline const char* string_VkSamplerReductionMode(VkSamplerReductionMode input_value)
  4891. {
  4892. switch (input_value)
  4893. {
  4894. case VK_SAMPLER_REDUCTION_MODE_MAX:
  4895. return "VK_SAMPLER_REDUCTION_MODE_MAX";
  4896. case VK_SAMPLER_REDUCTION_MODE_MIN:
  4897. return "VK_SAMPLER_REDUCTION_MODE_MIN";
  4898. case VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE:
  4899. return "VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE";
  4900. default:
  4901. return "Unhandled VkSamplerReductionMode";
  4902. }
  4903. }
  4904. static inline const char* string_VkSemaphoreType(VkSemaphoreType input_value)
  4905. {
  4906. switch (input_value)
  4907. {
  4908. case VK_SEMAPHORE_TYPE_BINARY:
  4909. return "VK_SEMAPHORE_TYPE_BINARY";
  4910. case VK_SEMAPHORE_TYPE_TIMELINE:
  4911. return "VK_SEMAPHORE_TYPE_TIMELINE";
  4912. default:
  4913. return "Unhandled VkSemaphoreType";
  4914. }
  4915. }
  4916. static inline const char* string_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits input_value)
  4917. {
  4918. switch (input_value)
  4919. {
  4920. case VK_SEMAPHORE_WAIT_ANY_BIT:
  4921. return "VK_SEMAPHORE_WAIT_ANY_BIT";
  4922. default:
  4923. return "Unhandled VkSemaphoreWaitFlagBits";
  4924. }
  4925. }
  4926. static inline std::string string_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags input_value)
  4927. {
  4928. std::string ret;
  4929. int index = 0;
  4930. while(input_value) {
  4931. if (input_value & 1) {
  4932. if( !ret.empty()) ret.append("|");
  4933. ret.append(string_VkSemaphoreWaitFlagBits(static_cast<VkSemaphoreWaitFlagBits>(1U << index)));
  4934. }
  4935. ++index;
  4936. input_value >>= 1;
  4937. }
  4938. if( ret.empty()) ret.append(string_VkSemaphoreWaitFlagBits(static_cast<VkSemaphoreWaitFlagBits>(0)));
  4939. return ret;
  4940. }
  4941. static inline const char* string_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR input_value)
  4942. {
  4943. switch (input_value)
  4944. {
  4945. case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR:
  4946. return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR";
  4947. case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR:
  4948. return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR";
  4949. case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR:
  4950. return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR";
  4951. case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR:
  4952. return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR";
  4953. case VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR:
  4954. return "VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR";
  4955. case VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR:
  4956. return "VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR";
  4957. case VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR:
  4958. return "VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR";
  4959. case VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR:
  4960. return "VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR";
  4961. case VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR:
  4962. return "VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR";
  4963. default:
  4964. return "Unhandled VkSurfaceTransformFlagBitsKHR";
  4965. }
  4966. }
  4967. static inline std::string string_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR input_value)
  4968. {
  4969. std::string ret;
  4970. int index = 0;
  4971. while(input_value) {
  4972. if (input_value & 1) {
  4973. if( !ret.empty()) ret.append("|");
  4974. ret.append(string_VkSurfaceTransformFlagBitsKHR(static_cast<VkSurfaceTransformFlagBitsKHR>(1U << index)));
  4975. }
  4976. ++index;
  4977. input_value >>= 1;
  4978. }
  4979. if( ret.empty()) ret.append(string_VkSurfaceTransformFlagBitsKHR(static_cast<VkSurfaceTransformFlagBitsKHR>(0)));
  4980. return ret;
  4981. }
  4982. static inline const char* string_VkPresentModeKHR(VkPresentModeKHR input_value)
  4983. {
  4984. switch (input_value)
  4985. {
  4986. case VK_PRESENT_MODE_FIFO_KHR:
  4987. return "VK_PRESENT_MODE_FIFO_KHR";
  4988. case VK_PRESENT_MODE_FIFO_RELAXED_KHR:
  4989. return "VK_PRESENT_MODE_FIFO_RELAXED_KHR";
  4990. case VK_PRESENT_MODE_IMMEDIATE_KHR:
  4991. return "VK_PRESENT_MODE_IMMEDIATE_KHR";
  4992. case VK_PRESENT_MODE_MAILBOX_KHR:
  4993. return "VK_PRESENT_MODE_MAILBOX_KHR";
  4994. case VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR:
  4995. return "VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR";
  4996. case VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR:
  4997. return "VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR";
  4998. default:
  4999. return "Unhandled VkPresentModeKHR";
  5000. }
  5001. }
  5002. static inline const char* string_VkColorSpaceKHR(VkColorSpaceKHR input_value)
  5003. {
  5004. switch (input_value)
  5005. {
  5006. case VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT:
  5007. return "VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT";
  5008. case VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT:
  5009. return "VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT";
  5010. case VK_COLOR_SPACE_BT2020_LINEAR_EXT:
  5011. return "VK_COLOR_SPACE_BT2020_LINEAR_EXT";
  5012. case VK_COLOR_SPACE_BT709_LINEAR_EXT:
  5013. return "VK_COLOR_SPACE_BT709_LINEAR_EXT";
  5014. case VK_COLOR_SPACE_BT709_NONLINEAR_EXT:
  5015. return "VK_COLOR_SPACE_BT709_NONLINEAR_EXT";
  5016. case VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT:
  5017. return "VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT";
  5018. case VK_COLOR_SPACE_DISPLAY_NATIVE_AMD:
  5019. return "VK_COLOR_SPACE_DISPLAY_NATIVE_AMD";
  5020. case VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT:
  5021. return "VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT";
  5022. case VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT:
  5023. return "VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT";
  5024. case VK_COLOR_SPACE_DOLBYVISION_EXT:
  5025. return "VK_COLOR_SPACE_DOLBYVISION_EXT";
  5026. case VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT:
  5027. return "VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT";
  5028. case VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT:
  5029. return "VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT";
  5030. case VK_COLOR_SPACE_HDR10_HLG_EXT:
  5031. return "VK_COLOR_SPACE_HDR10_HLG_EXT";
  5032. case VK_COLOR_SPACE_HDR10_ST2084_EXT:
  5033. return "VK_COLOR_SPACE_HDR10_ST2084_EXT";
  5034. case VK_COLOR_SPACE_PASS_THROUGH_EXT:
  5035. return "VK_COLOR_SPACE_PASS_THROUGH_EXT";
  5036. case VK_COLOR_SPACE_SRGB_NONLINEAR_KHR:
  5037. return "VK_COLOR_SPACE_SRGB_NONLINEAR_KHR";
  5038. default:
  5039. return "Unhandled VkColorSpaceKHR";
  5040. }
  5041. }
  5042. static inline const char* string_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR input_value)
  5043. {
  5044. switch (input_value)
  5045. {
  5046. case VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR:
  5047. return "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR";
  5048. case VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR:
  5049. return "VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR";
  5050. case VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR:
  5051. return "VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR";
  5052. case VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR:
  5053. return "VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR";
  5054. default:
  5055. return "Unhandled VkCompositeAlphaFlagBitsKHR";
  5056. }
  5057. }
  5058. static inline std::string string_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR input_value)
  5059. {
  5060. std::string ret;
  5061. int index = 0;
  5062. while(input_value) {
  5063. if (input_value & 1) {
  5064. if( !ret.empty()) ret.append("|");
  5065. ret.append(string_VkCompositeAlphaFlagBitsKHR(static_cast<VkCompositeAlphaFlagBitsKHR>(1U << index)));
  5066. }
  5067. ++index;
  5068. input_value >>= 1;
  5069. }
  5070. if( ret.empty()) ret.append(string_VkCompositeAlphaFlagBitsKHR(static_cast<VkCompositeAlphaFlagBitsKHR>(0)));
  5071. return ret;
  5072. }
  5073. static inline const char* string_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR input_value)
  5074. {
  5075. switch (input_value)
  5076. {
  5077. case VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR:
  5078. return "VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR";
  5079. case VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR:
  5080. return "VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR";
  5081. case VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR:
  5082. return "VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR";
  5083. default:
  5084. return "Unhandled VkSwapchainCreateFlagBitsKHR";
  5085. }
  5086. }
  5087. static inline std::string string_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR input_value)
  5088. {
  5089. std::string ret;
  5090. int index = 0;
  5091. while(input_value) {
  5092. if (input_value & 1) {
  5093. if( !ret.empty()) ret.append("|");
  5094. ret.append(string_VkSwapchainCreateFlagBitsKHR(static_cast<VkSwapchainCreateFlagBitsKHR>(1U << index)));
  5095. }
  5096. ++index;
  5097. input_value >>= 1;
  5098. }
  5099. if( ret.empty()) ret.append(string_VkSwapchainCreateFlagBitsKHR(static_cast<VkSwapchainCreateFlagBitsKHR>(0)));
  5100. return ret;
  5101. }
  5102. static inline const char* string_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR input_value)
  5103. {
  5104. switch (input_value)
  5105. {
  5106. case VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR:
  5107. return "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR";
  5108. case VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR:
  5109. return "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR";
  5110. case VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR:
  5111. return "VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR";
  5112. case VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR:
  5113. return "VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR";
  5114. default:
  5115. return "Unhandled VkDeviceGroupPresentModeFlagBitsKHR";
  5116. }
  5117. }
  5118. static inline std::string string_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlagsKHR input_value)
  5119. {
  5120. std::string ret;
  5121. int index = 0;
  5122. while(input_value) {
  5123. if (input_value & 1) {
  5124. if( !ret.empty()) ret.append("|");
  5125. ret.append(string_VkDeviceGroupPresentModeFlagBitsKHR(static_cast<VkDeviceGroupPresentModeFlagBitsKHR>(1U << index)));
  5126. }
  5127. ++index;
  5128. input_value >>= 1;
  5129. }
  5130. if( ret.empty()) ret.append(string_VkDeviceGroupPresentModeFlagBitsKHR(static_cast<VkDeviceGroupPresentModeFlagBitsKHR>(0)));
  5131. return ret;
  5132. }
  5133. static inline const char* string_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR input_value)
  5134. {
  5135. switch (input_value)
  5136. {
  5137. case VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR:
  5138. return "VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR";
  5139. case VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR:
  5140. return "VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR";
  5141. case VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR:
  5142. return "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR";
  5143. case VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR:
  5144. return "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR";
  5145. default:
  5146. return "Unhandled VkDisplayPlaneAlphaFlagBitsKHR";
  5147. }
  5148. }
  5149. static inline std::string string_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR input_value)
  5150. {
  5151. std::string ret;
  5152. int index = 0;
  5153. while(input_value) {
  5154. if (input_value & 1) {
  5155. if( !ret.empty()) ret.append("|");
  5156. ret.append(string_VkDisplayPlaneAlphaFlagBitsKHR(static_cast<VkDisplayPlaneAlphaFlagBitsKHR>(1U << index)));
  5157. }
  5158. ++index;
  5159. input_value >>= 1;
  5160. }
  5161. if( ret.empty()) ret.append(string_VkDisplayPlaneAlphaFlagBitsKHR(static_cast<VkDisplayPlaneAlphaFlagBitsKHR>(0)));
  5162. return ret;
  5163. }
  5164. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5165. static inline const char* string_VkVideoCodecOperationFlagBitsKHR(VkVideoCodecOperationFlagBitsKHR input_value)
  5166. {
  5167. switch (input_value)
  5168. {
  5169. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5170. case VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT:
  5171. return "VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_EXT";
  5172. #endif // VK_ENABLE_BETA_EXTENSIONS
  5173. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5174. case VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_EXT:
  5175. return "VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_EXT";
  5176. #endif // VK_ENABLE_BETA_EXTENSIONS
  5177. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5178. case VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT:
  5179. return "VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT";
  5180. #endif // VK_ENABLE_BETA_EXTENSIONS
  5181. case VK_VIDEO_CODEC_OPERATION_INVALID_BIT_KHR:
  5182. return "VK_VIDEO_CODEC_OPERATION_INVALID_BIT_KHR";
  5183. default:
  5184. return "Unhandled VkVideoCodecOperationFlagBitsKHR";
  5185. }
  5186. }
  5187. static inline std::string string_VkVideoCodecOperationFlagsKHR(VkVideoCodecOperationFlagsKHR input_value)
  5188. {
  5189. std::string ret;
  5190. int index = 0;
  5191. while(input_value) {
  5192. if (input_value & 1) {
  5193. if( !ret.empty()) ret.append("|");
  5194. ret.append(string_VkVideoCodecOperationFlagBitsKHR(static_cast<VkVideoCodecOperationFlagBitsKHR>(1U << index)));
  5195. }
  5196. ++index;
  5197. input_value >>= 1;
  5198. }
  5199. if( ret.empty()) ret.append(string_VkVideoCodecOperationFlagBitsKHR(static_cast<VkVideoCodecOperationFlagBitsKHR>(0)));
  5200. return ret;
  5201. }
  5202. #endif // VK_ENABLE_BETA_EXTENSIONS
  5203. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5204. static inline const char* string_VkVideoChromaSubsamplingFlagBitsKHR(VkVideoChromaSubsamplingFlagBitsKHR input_value)
  5205. {
  5206. switch (input_value)
  5207. {
  5208. case VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR:
  5209. return "VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR";
  5210. case VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR:
  5211. return "VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR";
  5212. case VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR:
  5213. return "VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR";
  5214. case VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_BIT_KHR:
  5215. return "VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_BIT_KHR";
  5216. case VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR:
  5217. return "VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR";
  5218. default:
  5219. return "Unhandled VkVideoChromaSubsamplingFlagBitsKHR";
  5220. }
  5221. }
  5222. static inline std::string string_VkVideoChromaSubsamplingFlagsKHR(VkVideoChromaSubsamplingFlagsKHR input_value)
  5223. {
  5224. std::string ret;
  5225. int index = 0;
  5226. while(input_value) {
  5227. if (input_value & 1) {
  5228. if( !ret.empty()) ret.append("|");
  5229. ret.append(string_VkVideoChromaSubsamplingFlagBitsKHR(static_cast<VkVideoChromaSubsamplingFlagBitsKHR>(1U << index)));
  5230. }
  5231. ++index;
  5232. input_value >>= 1;
  5233. }
  5234. if( ret.empty()) ret.append(string_VkVideoChromaSubsamplingFlagBitsKHR(static_cast<VkVideoChromaSubsamplingFlagBitsKHR>(0)));
  5235. return ret;
  5236. }
  5237. #endif // VK_ENABLE_BETA_EXTENSIONS
  5238. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5239. static inline const char* string_VkVideoComponentBitDepthFlagBitsKHR(VkVideoComponentBitDepthFlagBitsKHR input_value)
  5240. {
  5241. switch (input_value)
  5242. {
  5243. case VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR:
  5244. return "VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR";
  5245. case VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR:
  5246. return "VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR";
  5247. case VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR:
  5248. return "VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR";
  5249. case VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR:
  5250. return "VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR";
  5251. default:
  5252. return "Unhandled VkVideoComponentBitDepthFlagBitsKHR";
  5253. }
  5254. }
  5255. static inline std::string string_VkVideoComponentBitDepthFlagsKHR(VkVideoComponentBitDepthFlagsKHR input_value)
  5256. {
  5257. std::string ret;
  5258. int index = 0;
  5259. while(input_value) {
  5260. if (input_value & 1) {
  5261. if( !ret.empty()) ret.append("|");
  5262. ret.append(string_VkVideoComponentBitDepthFlagBitsKHR(static_cast<VkVideoComponentBitDepthFlagBitsKHR>(1U << index)));
  5263. }
  5264. ++index;
  5265. input_value >>= 1;
  5266. }
  5267. if( ret.empty()) ret.append(string_VkVideoComponentBitDepthFlagBitsKHR(static_cast<VkVideoComponentBitDepthFlagBitsKHR>(0)));
  5268. return ret;
  5269. }
  5270. #endif // VK_ENABLE_BETA_EXTENSIONS
  5271. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5272. static inline const char* string_VkVideoCapabilityFlagBitsKHR(VkVideoCapabilityFlagBitsKHR input_value)
  5273. {
  5274. switch (input_value)
  5275. {
  5276. case VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR:
  5277. return "VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR";
  5278. case VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR:
  5279. return "VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR";
  5280. default:
  5281. return "Unhandled VkVideoCapabilityFlagBitsKHR";
  5282. }
  5283. }
  5284. static inline std::string string_VkVideoCapabilityFlagsKHR(VkVideoCapabilityFlagsKHR input_value)
  5285. {
  5286. std::string ret;
  5287. int index = 0;
  5288. while(input_value) {
  5289. if (input_value & 1) {
  5290. if( !ret.empty()) ret.append("|");
  5291. ret.append(string_VkVideoCapabilityFlagBitsKHR(static_cast<VkVideoCapabilityFlagBitsKHR>(1U << index)));
  5292. }
  5293. ++index;
  5294. input_value >>= 1;
  5295. }
  5296. if( ret.empty()) ret.append(string_VkVideoCapabilityFlagBitsKHR(static_cast<VkVideoCapabilityFlagBitsKHR>(0)));
  5297. return ret;
  5298. }
  5299. #endif // VK_ENABLE_BETA_EXTENSIONS
  5300. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5301. static inline const char* string_VkVideoSessionCreateFlagBitsKHR(VkVideoSessionCreateFlagBitsKHR input_value)
  5302. {
  5303. switch (input_value)
  5304. {
  5305. case VK_VIDEO_SESSION_CREATE_DEFAULT_KHR:
  5306. return "VK_VIDEO_SESSION_CREATE_DEFAULT_KHR";
  5307. case VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR:
  5308. return "VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR";
  5309. default:
  5310. return "Unhandled VkVideoSessionCreateFlagBitsKHR";
  5311. }
  5312. }
  5313. static inline std::string string_VkVideoSessionCreateFlagsKHR(VkVideoSessionCreateFlagsKHR input_value)
  5314. {
  5315. std::string ret;
  5316. int index = 0;
  5317. while(input_value) {
  5318. if (input_value & 1) {
  5319. if( !ret.empty()) ret.append("|");
  5320. ret.append(string_VkVideoSessionCreateFlagBitsKHR(static_cast<VkVideoSessionCreateFlagBitsKHR>(1U << index)));
  5321. }
  5322. ++index;
  5323. input_value >>= 1;
  5324. }
  5325. if( ret.empty()) ret.append(string_VkVideoSessionCreateFlagBitsKHR(static_cast<VkVideoSessionCreateFlagBitsKHR>(0)));
  5326. return ret;
  5327. }
  5328. #endif // VK_ENABLE_BETA_EXTENSIONS
  5329. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5330. static inline const char* string_VkVideoCodingControlFlagBitsKHR(VkVideoCodingControlFlagBitsKHR input_value)
  5331. {
  5332. switch (input_value)
  5333. {
  5334. case VK_VIDEO_CODING_CONTROL_DEFAULT_KHR:
  5335. return "VK_VIDEO_CODING_CONTROL_DEFAULT_KHR";
  5336. case VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR:
  5337. return "VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR";
  5338. default:
  5339. return "Unhandled VkVideoCodingControlFlagBitsKHR";
  5340. }
  5341. }
  5342. static inline std::string string_VkVideoCodingControlFlagsKHR(VkVideoCodingControlFlagsKHR input_value)
  5343. {
  5344. std::string ret;
  5345. int index = 0;
  5346. while(input_value) {
  5347. if (input_value & 1) {
  5348. if( !ret.empty()) ret.append("|");
  5349. ret.append(string_VkVideoCodingControlFlagBitsKHR(static_cast<VkVideoCodingControlFlagBitsKHR>(1U << index)));
  5350. }
  5351. ++index;
  5352. input_value >>= 1;
  5353. }
  5354. if( ret.empty()) ret.append(string_VkVideoCodingControlFlagBitsKHR(static_cast<VkVideoCodingControlFlagBitsKHR>(0)));
  5355. return ret;
  5356. }
  5357. #endif // VK_ENABLE_BETA_EXTENSIONS
  5358. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5359. static inline const char* string_VkVideoCodingQualityPresetFlagBitsKHR(VkVideoCodingQualityPresetFlagBitsKHR input_value)
  5360. {
  5361. switch (input_value)
  5362. {
  5363. case VK_VIDEO_CODING_QUALITY_PRESET_DEFAULT_BIT_KHR:
  5364. return "VK_VIDEO_CODING_QUALITY_PRESET_DEFAULT_BIT_KHR";
  5365. case VK_VIDEO_CODING_QUALITY_PRESET_NORMAL_BIT_KHR:
  5366. return "VK_VIDEO_CODING_QUALITY_PRESET_NORMAL_BIT_KHR";
  5367. case VK_VIDEO_CODING_QUALITY_PRESET_POWER_BIT_KHR:
  5368. return "VK_VIDEO_CODING_QUALITY_PRESET_POWER_BIT_KHR";
  5369. case VK_VIDEO_CODING_QUALITY_PRESET_QUALITY_BIT_KHR:
  5370. return "VK_VIDEO_CODING_QUALITY_PRESET_QUALITY_BIT_KHR";
  5371. default:
  5372. return "Unhandled VkVideoCodingQualityPresetFlagBitsKHR";
  5373. }
  5374. }
  5375. static inline std::string string_VkVideoCodingQualityPresetFlagsKHR(VkVideoCodingQualityPresetFlagsKHR input_value)
  5376. {
  5377. std::string ret;
  5378. int index = 0;
  5379. while(input_value) {
  5380. if (input_value & 1) {
  5381. if( !ret.empty()) ret.append("|");
  5382. ret.append(string_VkVideoCodingQualityPresetFlagBitsKHR(static_cast<VkVideoCodingQualityPresetFlagBitsKHR>(1U << index)));
  5383. }
  5384. ++index;
  5385. input_value >>= 1;
  5386. }
  5387. if( ret.empty()) ret.append(string_VkVideoCodingQualityPresetFlagBitsKHR(static_cast<VkVideoCodingQualityPresetFlagBitsKHR>(0)));
  5388. return ret;
  5389. }
  5390. #endif // VK_ENABLE_BETA_EXTENSIONS
  5391. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5392. static inline const char* string_VkQueryResultStatusKHR(VkQueryResultStatusKHR input_value)
  5393. {
  5394. switch (input_value)
  5395. {
  5396. case VK_QUERY_RESULT_STATUS_COMPLETE_KHR:
  5397. return "VK_QUERY_RESULT_STATUS_COMPLETE_KHR";
  5398. case VK_QUERY_RESULT_STATUS_ERROR_KHR:
  5399. return "VK_QUERY_RESULT_STATUS_ERROR_KHR";
  5400. case VK_QUERY_RESULT_STATUS_NOT_READY_KHR:
  5401. return "VK_QUERY_RESULT_STATUS_NOT_READY_KHR";
  5402. default:
  5403. return "Unhandled VkQueryResultStatusKHR";
  5404. }
  5405. }
  5406. #endif // VK_ENABLE_BETA_EXTENSIONS
  5407. #ifdef VK_ENABLE_BETA_EXTENSIONS
  5408. static inline const char* string_VkVideoDecodeFlagBitsKHR(VkVideoDecodeFlagBitsKHR input_value)
  5409. {
  5410. switch (input_value)
  5411. {
  5412. case VK_VIDEO_DECODE_DEFAULT_KHR:
  5413. return "VK_VIDEO_DECODE_DEFAULT_KHR";
  5414. case VK_VIDEO_DECODE_RESERVED_0_BIT_KHR:
  5415. return "VK_VIDEO_DECODE_RESERVED_0_BIT_KHR";
  5416. default:
  5417. return "Unhandled VkVideoDecodeFlagBitsKHR";
  5418. }
  5419. }
  5420. static inline std::string string_VkVideoDecodeFlagsKHR(VkVideoDecodeFlagsKHR input_value)
  5421. {
  5422. std::string ret;
  5423. int index = 0;
  5424. while(input_value) {
  5425. if (input_value & 1) {
  5426. if( !ret.empty()) ret.append("|");
  5427. ret.append(string_VkVideoDecodeFlagBitsKHR(static_cast<VkVideoDecodeFlagBitsKHR>(1U << index)));
  5428. }
  5429. ++index;
  5430. input_value >>= 1;
  5431. }
  5432. if( ret.empty()) ret.append(string_VkVideoDecodeFlagBitsKHR(static_cast<VkVideoDecodeFlagBitsKHR>(0)));
  5433. return ret;
  5434. }
  5435. #endif // VK_ENABLE_BETA_EXTENSIONS
  5436. static inline const char* string_VkPeerMemoryFeatureFlagBitsKHR(VkPeerMemoryFeatureFlagBitsKHR input_value)
  5437. {
  5438. switch (input_value)
  5439. {
  5440. case VK_PEER_MEMORY_FEATURE_COPY_DST_BIT:
  5441. return "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT";
  5442. case VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT:
  5443. return "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT";
  5444. case VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT:
  5445. return "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT";
  5446. case VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT:
  5447. return "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT";
  5448. default:
  5449. return "Unhandled VkPeerMemoryFeatureFlagBitsKHR";
  5450. }
  5451. }
  5452. static inline std::string string_VkPeerMemoryFeatureFlagsKHR(VkPeerMemoryFeatureFlagsKHR input_value)
  5453. {
  5454. std::string ret;
  5455. int index = 0;
  5456. while(input_value) {
  5457. if (input_value & 1) {
  5458. if( !ret.empty()) ret.append("|");
  5459. ret.append(string_VkPeerMemoryFeatureFlagBitsKHR(static_cast<VkPeerMemoryFeatureFlagBitsKHR>(1U << index)));
  5460. }
  5461. ++index;
  5462. input_value >>= 1;
  5463. }
  5464. if( ret.empty()) ret.append(string_VkPeerMemoryFeatureFlagBitsKHR(static_cast<VkPeerMemoryFeatureFlagBitsKHR>(0)));
  5465. return ret;
  5466. }
  5467. static inline const char* string_VkMemoryAllocateFlagBitsKHR(VkMemoryAllocateFlagBitsKHR input_value)
  5468. {
  5469. switch (input_value)
  5470. {
  5471. case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT:
  5472. return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT";
  5473. case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
  5474. return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
  5475. case VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT:
  5476. return "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT";
  5477. default:
  5478. return "Unhandled VkMemoryAllocateFlagBitsKHR";
  5479. }
  5480. }
  5481. static inline std::string string_VkMemoryAllocateFlagsKHR(VkMemoryAllocateFlagsKHR input_value)
  5482. {
  5483. std::string ret;
  5484. int index = 0;
  5485. while(input_value) {
  5486. if (input_value & 1) {
  5487. if( !ret.empty()) ret.append("|");
  5488. ret.append(string_VkMemoryAllocateFlagBitsKHR(static_cast<VkMemoryAllocateFlagBitsKHR>(1U << index)));
  5489. }
  5490. ++index;
  5491. input_value >>= 1;
  5492. }
  5493. if( ret.empty()) ret.append(string_VkMemoryAllocateFlagBitsKHR(static_cast<VkMemoryAllocateFlagBitsKHR>(0)));
  5494. return ret;
  5495. }
  5496. static inline const char* string_VkExternalMemoryHandleTypeFlagBitsKHR(VkExternalMemoryHandleTypeFlagBitsKHR input_value)
  5497. {
  5498. switch (input_value)
  5499. {
  5500. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:
  5501. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID";
  5502. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT:
  5503. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT";
  5504. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT:
  5505. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT";
  5506. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT:
  5507. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT";
  5508. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT:
  5509. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT";
  5510. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT:
  5511. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT";
  5512. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT:
  5513. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT";
  5514. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT:
  5515. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT";
  5516. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT:
  5517. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT";
  5518. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  5519. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  5520. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  5521. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  5522. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV:
  5523. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV";
  5524. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA:
  5525. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA";
  5526. default:
  5527. return "Unhandled VkExternalMemoryHandleTypeFlagBitsKHR";
  5528. }
  5529. }
  5530. static inline std::string string_VkExternalMemoryHandleTypeFlagsKHR(VkExternalMemoryHandleTypeFlagsKHR input_value)
  5531. {
  5532. std::string ret;
  5533. int index = 0;
  5534. while(input_value) {
  5535. if (input_value & 1) {
  5536. if( !ret.empty()) ret.append("|");
  5537. ret.append(string_VkExternalMemoryHandleTypeFlagBitsKHR(static_cast<VkExternalMemoryHandleTypeFlagBitsKHR>(1U << index)));
  5538. }
  5539. ++index;
  5540. input_value >>= 1;
  5541. }
  5542. if( ret.empty()) ret.append(string_VkExternalMemoryHandleTypeFlagBitsKHR(static_cast<VkExternalMemoryHandleTypeFlagBitsKHR>(0)));
  5543. return ret;
  5544. }
  5545. static inline const char* string_VkExternalMemoryFeatureFlagBitsKHR(VkExternalMemoryFeatureFlagBitsKHR input_value)
  5546. {
  5547. switch (input_value)
  5548. {
  5549. case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT:
  5550. return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT";
  5551. case VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT:
  5552. return "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT";
  5553. case VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT:
  5554. return "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT";
  5555. default:
  5556. return "Unhandled VkExternalMemoryFeatureFlagBitsKHR";
  5557. }
  5558. }
  5559. static inline std::string string_VkExternalMemoryFeatureFlagsKHR(VkExternalMemoryFeatureFlagsKHR input_value)
  5560. {
  5561. std::string ret;
  5562. int index = 0;
  5563. while(input_value) {
  5564. if (input_value & 1) {
  5565. if( !ret.empty()) ret.append("|");
  5566. ret.append(string_VkExternalMemoryFeatureFlagBitsKHR(static_cast<VkExternalMemoryFeatureFlagBitsKHR>(1U << index)));
  5567. }
  5568. ++index;
  5569. input_value >>= 1;
  5570. }
  5571. if( ret.empty()) ret.append(string_VkExternalMemoryFeatureFlagBitsKHR(static_cast<VkExternalMemoryFeatureFlagBitsKHR>(0)));
  5572. return ret;
  5573. }
  5574. static inline const char* string_VkExternalSemaphoreHandleTypeFlagBitsKHR(VkExternalSemaphoreHandleTypeFlagBitsKHR input_value)
  5575. {
  5576. switch (input_value)
  5577. {
  5578. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT:
  5579. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT";
  5580. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT:
  5581. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT";
  5582. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  5583. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  5584. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  5585. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  5586. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT:
  5587. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT";
  5588. case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA:
  5589. return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA";
  5590. default:
  5591. return "Unhandled VkExternalSemaphoreHandleTypeFlagBitsKHR";
  5592. }
  5593. }
  5594. static inline std::string string_VkExternalSemaphoreHandleTypeFlagsKHR(VkExternalSemaphoreHandleTypeFlagsKHR input_value)
  5595. {
  5596. std::string ret;
  5597. int index = 0;
  5598. while(input_value) {
  5599. if (input_value & 1) {
  5600. if( !ret.empty()) ret.append("|");
  5601. ret.append(string_VkExternalSemaphoreHandleTypeFlagBitsKHR(static_cast<VkExternalSemaphoreHandleTypeFlagBitsKHR>(1U << index)));
  5602. }
  5603. ++index;
  5604. input_value >>= 1;
  5605. }
  5606. if( ret.empty()) ret.append(string_VkExternalSemaphoreHandleTypeFlagBitsKHR(static_cast<VkExternalSemaphoreHandleTypeFlagBitsKHR>(0)));
  5607. return ret;
  5608. }
  5609. static inline const char* string_VkExternalSemaphoreFeatureFlagBitsKHR(VkExternalSemaphoreFeatureFlagBitsKHR input_value)
  5610. {
  5611. switch (input_value)
  5612. {
  5613. case VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT:
  5614. return "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT";
  5615. case VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT:
  5616. return "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT";
  5617. default:
  5618. return "Unhandled VkExternalSemaphoreFeatureFlagBitsKHR";
  5619. }
  5620. }
  5621. static inline std::string string_VkExternalSemaphoreFeatureFlagsKHR(VkExternalSemaphoreFeatureFlagsKHR input_value)
  5622. {
  5623. std::string ret;
  5624. int index = 0;
  5625. while(input_value) {
  5626. if (input_value & 1) {
  5627. if( !ret.empty()) ret.append("|");
  5628. ret.append(string_VkExternalSemaphoreFeatureFlagBitsKHR(static_cast<VkExternalSemaphoreFeatureFlagBitsKHR>(1U << index)));
  5629. }
  5630. ++index;
  5631. input_value >>= 1;
  5632. }
  5633. if( ret.empty()) ret.append(string_VkExternalSemaphoreFeatureFlagBitsKHR(static_cast<VkExternalSemaphoreFeatureFlagBitsKHR>(0)));
  5634. return ret;
  5635. }
  5636. static inline const char* string_VkSemaphoreImportFlagBitsKHR(VkSemaphoreImportFlagBitsKHR input_value)
  5637. {
  5638. switch (input_value)
  5639. {
  5640. case VK_SEMAPHORE_IMPORT_TEMPORARY_BIT:
  5641. return "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT";
  5642. default:
  5643. return "Unhandled VkSemaphoreImportFlagBitsKHR";
  5644. }
  5645. }
  5646. static inline std::string string_VkSemaphoreImportFlagsKHR(VkSemaphoreImportFlagsKHR input_value)
  5647. {
  5648. std::string ret;
  5649. int index = 0;
  5650. while(input_value) {
  5651. if (input_value & 1) {
  5652. if( !ret.empty()) ret.append("|");
  5653. ret.append(string_VkSemaphoreImportFlagBitsKHR(static_cast<VkSemaphoreImportFlagBitsKHR>(1U << index)));
  5654. }
  5655. ++index;
  5656. input_value >>= 1;
  5657. }
  5658. if( ret.empty()) ret.append(string_VkSemaphoreImportFlagBitsKHR(static_cast<VkSemaphoreImportFlagBitsKHR>(0)));
  5659. return ret;
  5660. }
  5661. static inline const char* string_VkDescriptorUpdateTemplateTypeKHR(VkDescriptorUpdateTemplateTypeKHR input_value)
  5662. {
  5663. switch (input_value)
  5664. {
  5665. case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET:
  5666. return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET";
  5667. case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR:
  5668. return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
  5669. default:
  5670. return "Unhandled VkDescriptorUpdateTemplateTypeKHR";
  5671. }
  5672. }
  5673. static inline const char* string_VkExternalFenceHandleTypeFlagBitsKHR(VkExternalFenceHandleTypeFlagBitsKHR input_value)
  5674. {
  5675. switch (input_value)
  5676. {
  5677. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT:
  5678. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT";
  5679. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
  5680. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
  5681. case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
  5682. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
  5683. case VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT:
  5684. return "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT";
  5685. default:
  5686. return "Unhandled VkExternalFenceHandleTypeFlagBitsKHR";
  5687. }
  5688. }
  5689. static inline std::string string_VkExternalFenceHandleTypeFlagsKHR(VkExternalFenceHandleTypeFlagsKHR input_value)
  5690. {
  5691. std::string ret;
  5692. int index = 0;
  5693. while(input_value) {
  5694. if (input_value & 1) {
  5695. if( !ret.empty()) ret.append("|");
  5696. ret.append(string_VkExternalFenceHandleTypeFlagBitsKHR(static_cast<VkExternalFenceHandleTypeFlagBitsKHR>(1U << index)));
  5697. }
  5698. ++index;
  5699. input_value >>= 1;
  5700. }
  5701. if( ret.empty()) ret.append(string_VkExternalFenceHandleTypeFlagBitsKHR(static_cast<VkExternalFenceHandleTypeFlagBitsKHR>(0)));
  5702. return ret;
  5703. }
  5704. static inline const char* string_VkExternalFenceFeatureFlagBitsKHR(VkExternalFenceFeatureFlagBitsKHR input_value)
  5705. {
  5706. switch (input_value)
  5707. {
  5708. case VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT:
  5709. return "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT";
  5710. case VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT:
  5711. return "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT";
  5712. default:
  5713. return "Unhandled VkExternalFenceFeatureFlagBitsKHR";
  5714. }
  5715. }
  5716. static inline std::string string_VkExternalFenceFeatureFlagsKHR(VkExternalFenceFeatureFlagsKHR input_value)
  5717. {
  5718. std::string ret;
  5719. int index = 0;
  5720. while(input_value) {
  5721. if (input_value & 1) {
  5722. if( !ret.empty()) ret.append("|");
  5723. ret.append(string_VkExternalFenceFeatureFlagBitsKHR(static_cast<VkExternalFenceFeatureFlagBitsKHR>(1U << index)));
  5724. }
  5725. ++index;
  5726. input_value >>= 1;
  5727. }
  5728. if( ret.empty()) ret.append(string_VkExternalFenceFeatureFlagBitsKHR(static_cast<VkExternalFenceFeatureFlagBitsKHR>(0)));
  5729. return ret;
  5730. }
  5731. static inline const char* string_VkFenceImportFlagBitsKHR(VkFenceImportFlagBitsKHR input_value)
  5732. {
  5733. switch (input_value)
  5734. {
  5735. case VK_FENCE_IMPORT_TEMPORARY_BIT:
  5736. return "VK_FENCE_IMPORT_TEMPORARY_BIT";
  5737. default:
  5738. return "Unhandled VkFenceImportFlagBitsKHR";
  5739. }
  5740. }
  5741. static inline std::string string_VkFenceImportFlagsKHR(VkFenceImportFlagsKHR input_value)
  5742. {
  5743. std::string ret;
  5744. int index = 0;
  5745. while(input_value) {
  5746. if (input_value & 1) {
  5747. if( !ret.empty()) ret.append("|");
  5748. ret.append(string_VkFenceImportFlagBitsKHR(static_cast<VkFenceImportFlagBitsKHR>(1U << index)));
  5749. }
  5750. ++index;
  5751. input_value >>= 1;
  5752. }
  5753. if( ret.empty()) ret.append(string_VkFenceImportFlagBitsKHR(static_cast<VkFenceImportFlagBitsKHR>(0)));
  5754. return ret;
  5755. }
  5756. static inline const char* string_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR input_value)
  5757. {
  5758. switch (input_value)
  5759. {
  5760. case VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR:
  5761. return "VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR";
  5762. case VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR:
  5763. return "VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR";
  5764. case VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR:
  5765. return "VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR";
  5766. case VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR:
  5767. return "VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR";
  5768. case VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR:
  5769. return "VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR";
  5770. case VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR:
  5771. return "VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR";
  5772. case VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR:
  5773. return "VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR";
  5774. case VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR:
  5775. return "VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR";
  5776. case VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR:
  5777. return "VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR";
  5778. case VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR:
  5779. return "VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR";
  5780. case VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR:
  5781. return "VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR";
  5782. default:
  5783. return "Unhandled VkPerformanceCounterUnitKHR";
  5784. }
  5785. }
  5786. static inline const char* string_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR input_value)
  5787. {
  5788. switch (input_value)
  5789. {
  5790. case VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR:
  5791. return "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR";
  5792. case VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR:
  5793. return "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR";
  5794. case VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR:
  5795. return "VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR";
  5796. default:
  5797. return "Unhandled VkPerformanceCounterScopeKHR";
  5798. }
  5799. }
  5800. static inline const char* string_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR input_value)
  5801. {
  5802. switch (input_value)
  5803. {
  5804. case VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR:
  5805. return "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR";
  5806. case VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR:
  5807. return "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR";
  5808. case VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR:
  5809. return "VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR";
  5810. case VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR:
  5811. return "VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR";
  5812. case VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR:
  5813. return "VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR";
  5814. case VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR:
  5815. return "VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR";
  5816. default:
  5817. return "Unhandled VkPerformanceCounterStorageKHR";
  5818. }
  5819. }
  5820. static inline const char* string_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR input_value)
  5821. {
  5822. switch (input_value)
  5823. {
  5824. case VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR:
  5825. return "VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR";
  5826. case VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR:
  5827. return "VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR";
  5828. default:
  5829. return "Unhandled VkPerformanceCounterDescriptionFlagBitsKHR";
  5830. }
  5831. }
  5832. static inline std::string string_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDescriptionFlagsKHR input_value)
  5833. {
  5834. std::string ret;
  5835. int index = 0;
  5836. while(input_value) {
  5837. if (input_value & 1) {
  5838. if( !ret.empty()) ret.append("|");
  5839. ret.append(string_VkPerformanceCounterDescriptionFlagBitsKHR(static_cast<VkPerformanceCounterDescriptionFlagBitsKHR>(1U << index)));
  5840. }
  5841. ++index;
  5842. input_value >>= 1;
  5843. }
  5844. if( ret.empty()) ret.append(string_VkPerformanceCounterDescriptionFlagBitsKHR(static_cast<VkPerformanceCounterDescriptionFlagBitsKHR>(0)));
  5845. return ret;
  5846. }
  5847. static inline const char* string_VkPointClippingBehaviorKHR(VkPointClippingBehaviorKHR input_value)
  5848. {
  5849. switch (input_value)
  5850. {
  5851. case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES:
  5852. return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES";
  5853. case VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY:
  5854. return "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY";
  5855. default:
  5856. return "Unhandled VkPointClippingBehaviorKHR";
  5857. }
  5858. }
  5859. static inline const char* string_VkTessellationDomainOriginKHR(VkTessellationDomainOriginKHR input_value)
  5860. {
  5861. switch (input_value)
  5862. {
  5863. case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT:
  5864. return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT";
  5865. case VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT:
  5866. return "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT";
  5867. default:
  5868. return "Unhandled VkTessellationDomainOriginKHR";
  5869. }
  5870. }
  5871. static inline const char* string_VkSamplerYcbcrModelConversionKHR(VkSamplerYcbcrModelConversionKHR input_value)
  5872. {
  5873. switch (input_value)
  5874. {
  5875. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
  5876. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY";
  5877. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020:
  5878. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020";
  5879. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601:
  5880. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601";
  5881. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709:
  5882. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709";
  5883. case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY:
  5884. return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY";
  5885. default:
  5886. return "Unhandled VkSamplerYcbcrModelConversionKHR";
  5887. }
  5888. }
  5889. static inline const char* string_VkSamplerYcbcrRangeKHR(VkSamplerYcbcrRangeKHR input_value)
  5890. {
  5891. switch (input_value)
  5892. {
  5893. case VK_SAMPLER_YCBCR_RANGE_ITU_FULL:
  5894. return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL";
  5895. case VK_SAMPLER_YCBCR_RANGE_ITU_NARROW:
  5896. return "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW";
  5897. default:
  5898. return "Unhandled VkSamplerYcbcrRangeKHR";
  5899. }
  5900. }
  5901. static inline const char* string_VkChromaLocationKHR(VkChromaLocationKHR input_value)
  5902. {
  5903. switch (input_value)
  5904. {
  5905. case VK_CHROMA_LOCATION_COSITED_EVEN:
  5906. return "VK_CHROMA_LOCATION_COSITED_EVEN";
  5907. case VK_CHROMA_LOCATION_MIDPOINT:
  5908. return "VK_CHROMA_LOCATION_MIDPOINT";
  5909. default:
  5910. return "Unhandled VkChromaLocationKHR";
  5911. }
  5912. }
  5913. static inline const char* string_VkDriverIdKHR(VkDriverIdKHR input_value)
  5914. {
  5915. switch (input_value)
  5916. {
  5917. case VK_DRIVER_ID_AMD_OPEN_SOURCE:
  5918. return "VK_DRIVER_ID_AMD_OPEN_SOURCE";
  5919. case VK_DRIVER_ID_AMD_PROPRIETARY:
  5920. return "VK_DRIVER_ID_AMD_PROPRIETARY";
  5921. case VK_DRIVER_ID_ARM_PROPRIETARY:
  5922. return "VK_DRIVER_ID_ARM_PROPRIETARY";
  5923. case VK_DRIVER_ID_BROADCOM_PROPRIETARY:
  5924. return "VK_DRIVER_ID_BROADCOM_PROPRIETARY";
  5925. case VK_DRIVER_ID_COREAVI_PROPRIETARY:
  5926. return "VK_DRIVER_ID_COREAVI_PROPRIETARY";
  5927. case VK_DRIVER_ID_GGP_PROPRIETARY:
  5928. return "VK_DRIVER_ID_GGP_PROPRIETARY";
  5929. case VK_DRIVER_ID_GOOGLE_SWIFTSHADER:
  5930. return "VK_DRIVER_ID_GOOGLE_SWIFTSHADER";
  5931. case VK_DRIVER_ID_IMAGINATION_PROPRIETARY:
  5932. return "VK_DRIVER_ID_IMAGINATION_PROPRIETARY";
  5933. case VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA:
  5934. return "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA";
  5935. case VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS:
  5936. return "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS";
  5937. case VK_DRIVER_ID_JUICE_PROPRIETARY:
  5938. return "VK_DRIVER_ID_JUICE_PROPRIETARY";
  5939. case VK_DRIVER_ID_MESA_LLVMPIPE:
  5940. return "VK_DRIVER_ID_MESA_LLVMPIPE";
  5941. case VK_DRIVER_ID_MESA_RADV:
  5942. return "VK_DRIVER_ID_MESA_RADV";
  5943. case VK_DRIVER_ID_MOLTENVK:
  5944. return "VK_DRIVER_ID_MOLTENVK";
  5945. case VK_DRIVER_ID_NVIDIA_PROPRIETARY:
  5946. return "VK_DRIVER_ID_NVIDIA_PROPRIETARY";
  5947. case VK_DRIVER_ID_QUALCOMM_PROPRIETARY:
  5948. return "VK_DRIVER_ID_QUALCOMM_PROPRIETARY";
  5949. case VK_DRIVER_ID_VERISILICON_PROPRIETARY:
  5950. return "VK_DRIVER_ID_VERISILICON_PROPRIETARY";
  5951. default:
  5952. return "Unhandled VkDriverIdKHR";
  5953. }
  5954. }
  5955. static inline const char* string_VkShaderFloatControlsIndependenceKHR(VkShaderFloatControlsIndependenceKHR input_value)
  5956. {
  5957. switch (input_value)
  5958. {
  5959. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY:
  5960. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY";
  5961. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL:
  5962. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL";
  5963. case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE:
  5964. return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE";
  5965. default:
  5966. return "Unhandled VkShaderFloatControlsIndependenceKHR";
  5967. }
  5968. }
  5969. static inline const char* string_VkResolveModeFlagBitsKHR(VkResolveModeFlagBitsKHR input_value)
  5970. {
  5971. switch (input_value)
  5972. {
  5973. case VK_RESOLVE_MODE_AVERAGE_BIT:
  5974. return "VK_RESOLVE_MODE_AVERAGE_BIT";
  5975. case VK_RESOLVE_MODE_MAX_BIT:
  5976. return "VK_RESOLVE_MODE_MAX_BIT";
  5977. case VK_RESOLVE_MODE_MIN_BIT:
  5978. return "VK_RESOLVE_MODE_MIN_BIT";
  5979. case VK_RESOLVE_MODE_NONE:
  5980. return "VK_RESOLVE_MODE_NONE";
  5981. case VK_RESOLVE_MODE_SAMPLE_ZERO_BIT:
  5982. return "VK_RESOLVE_MODE_SAMPLE_ZERO_BIT";
  5983. default:
  5984. return "Unhandled VkResolveModeFlagBitsKHR";
  5985. }
  5986. }
  5987. static inline std::string string_VkResolveModeFlagsKHR(VkResolveModeFlagsKHR input_value)
  5988. {
  5989. std::string ret;
  5990. int index = 0;
  5991. while(input_value) {
  5992. if (input_value & 1) {
  5993. if( !ret.empty()) ret.append("|");
  5994. ret.append(string_VkResolveModeFlagBitsKHR(static_cast<VkResolveModeFlagBitsKHR>(1U << index)));
  5995. }
  5996. ++index;
  5997. input_value >>= 1;
  5998. }
  5999. if( ret.empty()) ret.append(string_VkResolveModeFlagBitsKHR(static_cast<VkResolveModeFlagBitsKHR>(0)));
  6000. return ret;
  6001. }
  6002. static inline const char* string_VkSemaphoreTypeKHR(VkSemaphoreTypeKHR input_value)
  6003. {
  6004. switch (input_value)
  6005. {
  6006. case VK_SEMAPHORE_TYPE_BINARY:
  6007. return "VK_SEMAPHORE_TYPE_BINARY";
  6008. case VK_SEMAPHORE_TYPE_TIMELINE:
  6009. return "VK_SEMAPHORE_TYPE_TIMELINE";
  6010. default:
  6011. return "Unhandled VkSemaphoreTypeKHR";
  6012. }
  6013. }
  6014. static inline const char* string_VkSemaphoreWaitFlagBitsKHR(VkSemaphoreWaitFlagBitsKHR input_value)
  6015. {
  6016. switch (input_value)
  6017. {
  6018. case VK_SEMAPHORE_WAIT_ANY_BIT:
  6019. return "VK_SEMAPHORE_WAIT_ANY_BIT";
  6020. default:
  6021. return "Unhandled VkSemaphoreWaitFlagBitsKHR";
  6022. }
  6023. }
  6024. static inline std::string string_VkSemaphoreWaitFlagsKHR(VkSemaphoreWaitFlagsKHR input_value)
  6025. {
  6026. std::string ret;
  6027. int index = 0;
  6028. while(input_value) {
  6029. if (input_value & 1) {
  6030. if( !ret.empty()) ret.append("|");
  6031. ret.append(string_VkSemaphoreWaitFlagBitsKHR(static_cast<VkSemaphoreWaitFlagBitsKHR>(1U << index)));
  6032. }
  6033. ++index;
  6034. input_value >>= 1;
  6035. }
  6036. if( ret.empty()) ret.append(string_VkSemaphoreWaitFlagBitsKHR(static_cast<VkSemaphoreWaitFlagBitsKHR>(0)));
  6037. return ret;
  6038. }
  6039. static inline const char* string_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR input_value)
  6040. {
  6041. switch (input_value)
  6042. {
  6043. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR:
  6044. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR";
  6045. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR:
  6046. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR";
  6047. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR:
  6048. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR";
  6049. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR:
  6050. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR";
  6051. case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR:
  6052. return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR";
  6053. default:
  6054. return "Unhandled VkFragmentShadingRateCombinerOpKHR";
  6055. }
  6056. }
  6057. static inline const char* string_VkPipelineExecutableStatisticFormatKHR(VkPipelineExecutableStatisticFormatKHR input_value)
  6058. {
  6059. switch (input_value)
  6060. {
  6061. case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR:
  6062. return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR";
  6063. case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR:
  6064. return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR";
  6065. case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR:
  6066. return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR";
  6067. case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR:
  6068. return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR";
  6069. default:
  6070. return "Unhandled VkPipelineExecutableStatisticFormatKHR";
  6071. }
  6072. }
  6073. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6074. static inline const char* string_VkVideoEncodeFlagBitsKHR(VkVideoEncodeFlagBitsKHR input_value)
  6075. {
  6076. switch (input_value)
  6077. {
  6078. case VK_VIDEO_ENCODE_DEFAULT_KHR:
  6079. return "VK_VIDEO_ENCODE_DEFAULT_KHR";
  6080. case VK_VIDEO_ENCODE_RESERVED_0_BIT_KHR:
  6081. return "VK_VIDEO_ENCODE_RESERVED_0_BIT_KHR";
  6082. default:
  6083. return "Unhandled VkVideoEncodeFlagBitsKHR";
  6084. }
  6085. }
  6086. static inline std::string string_VkVideoEncodeFlagsKHR(VkVideoEncodeFlagsKHR input_value)
  6087. {
  6088. std::string ret;
  6089. int index = 0;
  6090. while(input_value) {
  6091. if (input_value & 1) {
  6092. if( !ret.empty()) ret.append("|");
  6093. ret.append(string_VkVideoEncodeFlagBitsKHR(static_cast<VkVideoEncodeFlagBitsKHR>(1U << index)));
  6094. }
  6095. ++index;
  6096. input_value >>= 1;
  6097. }
  6098. if( ret.empty()) ret.append(string_VkVideoEncodeFlagBitsKHR(static_cast<VkVideoEncodeFlagBitsKHR>(0)));
  6099. return ret;
  6100. }
  6101. #endif // VK_ENABLE_BETA_EXTENSIONS
  6102. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6103. static inline const char* string_VkVideoEncodeRateControlFlagBitsKHR(VkVideoEncodeRateControlFlagBitsKHR input_value)
  6104. {
  6105. switch (input_value)
  6106. {
  6107. case VK_VIDEO_ENCODE_RATE_CONTROL_DEFAULT_KHR:
  6108. return "VK_VIDEO_ENCODE_RATE_CONTROL_DEFAULT_KHR";
  6109. case VK_VIDEO_ENCODE_RATE_CONTROL_RESET_BIT_KHR:
  6110. return "VK_VIDEO_ENCODE_RATE_CONTROL_RESET_BIT_KHR";
  6111. default:
  6112. return "Unhandled VkVideoEncodeRateControlFlagBitsKHR";
  6113. }
  6114. }
  6115. static inline std::string string_VkVideoEncodeRateControlFlagsKHR(VkVideoEncodeRateControlFlagsKHR input_value)
  6116. {
  6117. std::string ret;
  6118. int index = 0;
  6119. while(input_value) {
  6120. if (input_value & 1) {
  6121. if( !ret.empty()) ret.append("|");
  6122. ret.append(string_VkVideoEncodeRateControlFlagBitsKHR(static_cast<VkVideoEncodeRateControlFlagBitsKHR>(1U << index)));
  6123. }
  6124. ++index;
  6125. input_value >>= 1;
  6126. }
  6127. if( ret.empty()) ret.append(string_VkVideoEncodeRateControlFlagBitsKHR(static_cast<VkVideoEncodeRateControlFlagBitsKHR>(0)));
  6128. return ret;
  6129. }
  6130. #endif // VK_ENABLE_BETA_EXTENSIONS
  6131. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6132. static inline const char* string_VkVideoEncodeRateControlModeFlagBitsKHR(VkVideoEncodeRateControlModeFlagBitsKHR input_value)
  6133. {
  6134. switch (input_value)
  6135. {
  6136. case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR:
  6137. return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR";
  6138. case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR:
  6139. return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR";
  6140. case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR:
  6141. return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR";
  6142. default:
  6143. return "Unhandled VkVideoEncodeRateControlModeFlagBitsKHR";
  6144. }
  6145. }
  6146. static inline std::string string_VkVideoEncodeRateControlModeFlagsKHR(VkVideoEncodeRateControlModeFlagsKHR input_value)
  6147. {
  6148. std::string ret;
  6149. int index = 0;
  6150. while(input_value) {
  6151. if (input_value & 1) {
  6152. if( !ret.empty()) ret.append("|");
  6153. ret.append(string_VkVideoEncodeRateControlModeFlagBitsKHR(static_cast<VkVideoEncodeRateControlModeFlagBitsKHR>(1U << index)));
  6154. }
  6155. ++index;
  6156. input_value >>= 1;
  6157. }
  6158. if( ret.empty()) ret.append(string_VkVideoEncodeRateControlModeFlagBitsKHR(static_cast<VkVideoEncodeRateControlModeFlagBitsKHR>(0)));
  6159. return ret;
  6160. }
  6161. #endif // VK_ENABLE_BETA_EXTENSIONS
  6162. static inline const char* string_VkPipelineStageFlagBits2KHR(uint64_t input_value)
  6163. {
  6164. switch (input_value)
  6165. {
  6166. case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
  6167. return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
  6168. case VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR:
  6169. return "VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR";
  6170. case VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR:
  6171. return "VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR";
  6172. case VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR:
  6173. return "VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR";
  6174. case VK_PIPELINE_STAGE_2_BLIT_BIT_KHR:
  6175. return "VK_PIPELINE_STAGE_2_BLIT_BIT_KHR";
  6176. case VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR:
  6177. return "VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR";
  6178. case VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR:
  6179. return "VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR";
  6180. case VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR:
  6181. return "VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR";
  6182. case VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV:
  6183. return "VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV";
  6184. case VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR:
  6185. return "VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR";
  6186. case VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT:
  6187. return "VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT";
  6188. case VK_PIPELINE_STAGE_2_COPY_BIT_KHR:
  6189. return "VK_PIPELINE_STAGE_2_COPY_BIT_KHR";
  6190. case VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR:
  6191. return "VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR";
  6192. case VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR:
  6193. return "VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR";
  6194. case VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
  6195. return "VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
  6196. case VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR:
  6197. return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR";
  6198. case VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
  6199. return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
  6200. case VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR:
  6201. return "VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR";
  6202. case VK_PIPELINE_STAGE_2_HOST_BIT_KHR:
  6203. return "VK_PIPELINE_STAGE_2_HOST_BIT_KHR";
  6204. case VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR:
  6205. return "VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR";
  6206. case VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI:
  6207. return "VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI";
  6208. case VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR:
  6209. return "VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR";
  6210. case VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV:
  6211. return "VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV";
  6212. case VK_PIPELINE_STAGE_2_NONE_KHR:
  6213. return "VK_PIPELINE_STAGE_2_NONE_KHR";
  6214. case VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR:
  6215. return "VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR";
  6216. case VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR:
  6217. return "VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR";
  6218. case VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR:
  6219. return "VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR";
  6220. case VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI:
  6221. return "VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI";
  6222. case VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV:
  6223. return "VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV";
  6224. case VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR:
  6225. return "VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR";
  6226. case VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR:
  6227. return "VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR";
  6228. case VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR:
  6229. return "VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR";
  6230. case VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT:
  6231. return "VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT";
  6232. case VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR:
  6233. return "VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR";
  6234. case VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR:
  6235. return "VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR";
  6236. case VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR:
  6237. return "VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR";
  6238. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6239. case VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR:
  6240. return "VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR";
  6241. #endif // VK_ENABLE_BETA_EXTENSIONS
  6242. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6243. case VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR:
  6244. return "VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR";
  6245. #endif // VK_ENABLE_BETA_EXTENSIONS
  6246. default:
  6247. return "Unhandled VkPipelineStageFlagBits2KHR";
  6248. }
  6249. }
  6250. static inline std::string string_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR input_value)
  6251. {
  6252. std::string ret;
  6253. int index = 0;
  6254. while(input_value) {
  6255. if (input_value & 1) {
  6256. if( !ret.empty()) ret.append("|");
  6257. ret.append(string_VkPipelineStageFlagBits2KHR(static_cast<uint64_t>(1ULL << index)));
  6258. }
  6259. ++index;
  6260. input_value >>= 1;
  6261. }
  6262. if( ret.empty()) ret.append(string_VkPipelineStageFlagBits2KHR(static_cast<uint64_t>(0)));
  6263. return ret;
  6264. }
  6265. static inline const char* string_VkAccessFlagBits2KHR(uint64_t input_value)
  6266. {
  6267. switch (input_value)
  6268. {
  6269. case VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR:
  6270. return "VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR";
  6271. case VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
  6272. return "VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
  6273. case VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR:
  6274. return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR";
  6275. case VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
  6276. return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
  6277. case VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR:
  6278. return "VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR";
  6279. case VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV:
  6280. return "VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV";
  6281. case VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV:
  6282. return "VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV";
  6283. case VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT:
  6284. return "VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT";
  6285. case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR:
  6286. return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR";
  6287. case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR:
  6288. return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR";
  6289. case VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
  6290. return "VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
  6291. case VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
  6292. return "VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
  6293. case VK_ACCESS_2_HOST_READ_BIT_KHR:
  6294. return "VK_ACCESS_2_HOST_READ_BIT_KHR";
  6295. case VK_ACCESS_2_HOST_WRITE_BIT_KHR:
  6296. return "VK_ACCESS_2_HOST_WRITE_BIT_KHR";
  6297. case VK_ACCESS_2_INDEX_READ_BIT_KHR:
  6298. return "VK_ACCESS_2_INDEX_READ_BIT_KHR";
  6299. case VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR:
  6300. return "VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR";
  6301. case VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR:
  6302. return "VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR";
  6303. case VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI:
  6304. return "VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI";
  6305. case VK_ACCESS_2_MEMORY_READ_BIT_KHR:
  6306. return "VK_ACCESS_2_MEMORY_READ_BIT_KHR";
  6307. case VK_ACCESS_2_MEMORY_WRITE_BIT_KHR:
  6308. return "VK_ACCESS_2_MEMORY_WRITE_BIT_KHR";
  6309. case VK_ACCESS_2_NONE_KHR:
  6310. return "VK_ACCESS_2_NONE_KHR";
  6311. case VK_ACCESS_2_SHADER_READ_BIT_KHR:
  6312. return "VK_ACCESS_2_SHADER_READ_BIT_KHR";
  6313. case VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR:
  6314. return "VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR";
  6315. case VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR:
  6316. return "VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR";
  6317. case VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR:
  6318. return "VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR";
  6319. case VK_ACCESS_2_SHADER_WRITE_BIT_KHR:
  6320. return "VK_ACCESS_2_SHADER_WRITE_BIT_KHR";
  6321. case VK_ACCESS_2_TRANSFER_READ_BIT_KHR:
  6322. return "VK_ACCESS_2_TRANSFER_READ_BIT_KHR";
  6323. case VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR:
  6324. return "VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR";
  6325. case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
  6326. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
  6327. case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
  6328. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
  6329. case VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
  6330. return "VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
  6331. case VK_ACCESS_2_UNIFORM_READ_BIT_KHR:
  6332. return "VK_ACCESS_2_UNIFORM_READ_BIT_KHR";
  6333. case VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR:
  6334. return "VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR";
  6335. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6336. case VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR:
  6337. return "VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR";
  6338. #endif // VK_ENABLE_BETA_EXTENSIONS
  6339. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6340. case VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR:
  6341. return "VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR";
  6342. #endif // VK_ENABLE_BETA_EXTENSIONS
  6343. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6344. case VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR:
  6345. return "VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR";
  6346. #endif // VK_ENABLE_BETA_EXTENSIONS
  6347. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6348. case VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR:
  6349. return "VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR";
  6350. #endif // VK_ENABLE_BETA_EXTENSIONS
  6351. default:
  6352. return "Unhandled VkAccessFlagBits2KHR";
  6353. }
  6354. }
  6355. static inline std::string string_VkAccessFlags2KHR(VkAccessFlags2KHR input_value)
  6356. {
  6357. std::string ret;
  6358. int index = 0;
  6359. while(input_value) {
  6360. if (input_value & 1) {
  6361. if( !ret.empty()) ret.append("|");
  6362. ret.append(string_VkAccessFlagBits2KHR(static_cast<uint64_t>(1ULL << index)));
  6363. }
  6364. ++index;
  6365. input_value >>= 1;
  6366. }
  6367. if( ret.empty()) ret.append(string_VkAccessFlagBits2KHR(static_cast<uint64_t>(0)));
  6368. return ret;
  6369. }
  6370. static inline const char* string_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR input_value)
  6371. {
  6372. switch (input_value)
  6373. {
  6374. case VK_SUBMIT_PROTECTED_BIT_KHR:
  6375. return "VK_SUBMIT_PROTECTED_BIT_KHR";
  6376. default:
  6377. return "Unhandled VkSubmitFlagBitsKHR";
  6378. }
  6379. }
  6380. static inline std::string string_VkSubmitFlagsKHR(VkSubmitFlagsKHR input_value)
  6381. {
  6382. std::string ret;
  6383. int index = 0;
  6384. while(input_value) {
  6385. if (input_value & 1) {
  6386. if( !ret.empty()) ret.append("|");
  6387. ret.append(string_VkSubmitFlagBitsKHR(static_cast<VkSubmitFlagBitsKHR>(1U << index)));
  6388. }
  6389. ++index;
  6390. input_value >>= 1;
  6391. }
  6392. if( ret.empty()) ret.append(string_VkSubmitFlagBitsKHR(static_cast<VkSubmitFlagBitsKHR>(0)));
  6393. return ret;
  6394. }
  6395. static inline const char* string_VkDebugReportFlagBitsEXT(VkDebugReportFlagBitsEXT input_value)
  6396. {
  6397. switch (input_value)
  6398. {
  6399. case VK_DEBUG_REPORT_DEBUG_BIT_EXT:
  6400. return "VK_DEBUG_REPORT_DEBUG_BIT_EXT";
  6401. case VK_DEBUG_REPORT_ERROR_BIT_EXT:
  6402. return "VK_DEBUG_REPORT_ERROR_BIT_EXT";
  6403. case VK_DEBUG_REPORT_INFORMATION_BIT_EXT:
  6404. return "VK_DEBUG_REPORT_INFORMATION_BIT_EXT";
  6405. case VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT:
  6406. return "VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT";
  6407. case VK_DEBUG_REPORT_WARNING_BIT_EXT:
  6408. return "VK_DEBUG_REPORT_WARNING_BIT_EXT";
  6409. default:
  6410. return "Unhandled VkDebugReportFlagBitsEXT";
  6411. }
  6412. }
  6413. static inline std::string string_VkDebugReportFlagsEXT(VkDebugReportFlagsEXT input_value)
  6414. {
  6415. std::string ret;
  6416. int index = 0;
  6417. while(input_value) {
  6418. if (input_value & 1) {
  6419. if( !ret.empty()) ret.append("|");
  6420. ret.append(string_VkDebugReportFlagBitsEXT(static_cast<VkDebugReportFlagBitsEXT>(1U << index)));
  6421. }
  6422. ++index;
  6423. input_value >>= 1;
  6424. }
  6425. if( ret.empty()) ret.append(string_VkDebugReportFlagBitsEXT(static_cast<VkDebugReportFlagBitsEXT>(0)));
  6426. return ret;
  6427. }
  6428. static inline const char* string_VkDebugReportObjectTypeEXT(VkDebugReportObjectTypeEXT input_value)
  6429. {
  6430. switch (input_value)
  6431. {
  6432. case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT:
  6433. return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT";
  6434. case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT:
  6435. return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT";
  6436. case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT:
  6437. return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT";
  6438. case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT:
  6439. return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT";
  6440. case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT:
  6441. return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT";
  6442. case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT:
  6443. return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT";
  6444. case VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT:
  6445. return "VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT";
  6446. case VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT:
  6447. return "VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT";
  6448. case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT:
  6449. return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT";
  6450. case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT:
  6451. return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT";
  6452. case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT:
  6453. return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT";
  6454. case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT:
  6455. return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT";
  6456. case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT:
  6457. return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT";
  6458. case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT:
  6459. return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT";
  6460. case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT:
  6461. return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT";
  6462. case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT:
  6463. return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT";
  6464. case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT:
  6465. return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT";
  6466. case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT:
  6467. return "VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT";
  6468. case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT:
  6469. return "VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT";
  6470. case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT:
  6471. return "VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT";
  6472. case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT:
  6473. return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT";
  6474. case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT:
  6475. return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT";
  6476. case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT:
  6477. return "VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT";
  6478. case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT:
  6479. return "VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT";
  6480. case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT:
  6481. return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT";
  6482. case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT:
  6483. return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT";
  6484. case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT:
  6485. return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT";
  6486. case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT:
  6487. return "VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT";
  6488. case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT:
  6489. return "VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT";
  6490. case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT:
  6491. return "VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT";
  6492. case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT:
  6493. return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT";
  6494. case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT:
  6495. return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT";
  6496. case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT:
  6497. return "VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT";
  6498. case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT:
  6499. return "VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT";
  6500. case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT:
  6501. return "VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT";
  6502. case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT:
  6503. return "VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT";
  6504. case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT:
  6505. return "VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT";
  6506. case VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT:
  6507. return "VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT";
  6508. default:
  6509. return "Unhandled VkDebugReportObjectTypeEXT";
  6510. }
  6511. }
  6512. static inline const char* string_VkRasterizationOrderAMD(VkRasterizationOrderAMD input_value)
  6513. {
  6514. switch (input_value)
  6515. {
  6516. case VK_RASTERIZATION_ORDER_RELAXED_AMD:
  6517. return "VK_RASTERIZATION_ORDER_RELAXED_AMD";
  6518. case VK_RASTERIZATION_ORDER_STRICT_AMD:
  6519. return "VK_RASTERIZATION_ORDER_STRICT_AMD";
  6520. default:
  6521. return "Unhandled VkRasterizationOrderAMD";
  6522. }
  6523. }
  6524. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6525. static inline const char* string_VkVideoEncodeH264CapabilityFlagBitsEXT(VkVideoEncodeH264CapabilityFlagBitsEXT input_value)
  6526. {
  6527. switch (input_value)
  6528. {
  6529. case VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT:
  6530. return "VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT";
  6531. case VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT:
  6532. return "VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT";
  6533. case VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT:
  6534. return "VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT";
  6535. case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT:
  6536. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT";
  6537. case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT:
  6538. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT";
  6539. case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT:
  6540. return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT";
  6541. case VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT:
  6542. return "VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT";
  6543. case VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT:
  6544. return "VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT";
  6545. case VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT:
  6546. return "VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT";
  6547. case VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT:
  6548. return "VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT";
  6549. case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BI_PRED_IMPLICIT_BIT_EXT:
  6550. return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BI_PRED_IMPLICIT_BIT_EXT";
  6551. default:
  6552. return "Unhandled VkVideoEncodeH264CapabilityFlagBitsEXT";
  6553. }
  6554. }
  6555. static inline std::string string_VkVideoEncodeH264CapabilityFlagsEXT(VkVideoEncodeH264CapabilityFlagsEXT input_value)
  6556. {
  6557. std::string ret;
  6558. int index = 0;
  6559. while(input_value) {
  6560. if (input_value & 1) {
  6561. if( !ret.empty()) ret.append("|");
  6562. ret.append(string_VkVideoEncodeH264CapabilityFlagBitsEXT(static_cast<VkVideoEncodeH264CapabilityFlagBitsEXT>(1U << index)));
  6563. }
  6564. ++index;
  6565. input_value >>= 1;
  6566. }
  6567. if( ret.empty()) ret.append(string_VkVideoEncodeH264CapabilityFlagBitsEXT(static_cast<VkVideoEncodeH264CapabilityFlagBitsEXT>(0)));
  6568. return ret;
  6569. }
  6570. #endif // VK_ENABLE_BETA_EXTENSIONS
  6571. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6572. static inline const char* string_VkVideoEncodeH264InputModeFlagBitsEXT(VkVideoEncodeH264InputModeFlagBitsEXT input_value)
  6573. {
  6574. switch (input_value)
  6575. {
  6576. case VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT:
  6577. return "VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT";
  6578. case VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT:
  6579. return "VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT";
  6580. case VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT:
  6581. return "VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT";
  6582. default:
  6583. return "Unhandled VkVideoEncodeH264InputModeFlagBitsEXT";
  6584. }
  6585. }
  6586. static inline std::string string_VkVideoEncodeH264InputModeFlagsEXT(VkVideoEncodeH264InputModeFlagsEXT input_value)
  6587. {
  6588. std::string ret;
  6589. int index = 0;
  6590. while(input_value) {
  6591. if (input_value & 1) {
  6592. if( !ret.empty()) ret.append("|");
  6593. ret.append(string_VkVideoEncodeH264InputModeFlagBitsEXT(static_cast<VkVideoEncodeH264InputModeFlagBitsEXT>(1U << index)));
  6594. }
  6595. ++index;
  6596. input_value >>= 1;
  6597. }
  6598. if( ret.empty()) ret.append(string_VkVideoEncodeH264InputModeFlagBitsEXT(static_cast<VkVideoEncodeH264InputModeFlagBitsEXT>(0)));
  6599. return ret;
  6600. }
  6601. #endif // VK_ENABLE_BETA_EXTENSIONS
  6602. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6603. static inline const char* string_VkVideoEncodeH264OutputModeFlagBitsEXT(VkVideoEncodeH264OutputModeFlagBitsEXT input_value)
  6604. {
  6605. switch (input_value)
  6606. {
  6607. case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT:
  6608. return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT";
  6609. case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT:
  6610. return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT";
  6611. case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT:
  6612. return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT";
  6613. default:
  6614. return "Unhandled VkVideoEncodeH264OutputModeFlagBitsEXT";
  6615. }
  6616. }
  6617. static inline std::string string_VkVideoEncodeH264OutputModeFlagsEXT(VkVideoEncodeH264OutputModeFlagsEXT input_value)
  6618. {
  6619. std::string ret;
  6620. int index = 0;
  6621. while(input_value) {
  6622. if (input_value & 1) {
  6623. if( !ret.empty()) ret.append("|");
  6624. ret.append(string_VkVideoEncodeH264OutputModeFlagBitsEXT(static_cast<VkVideoEncodeH264OutputModeFlagBitsEXT>(1U << index)));
  6625. }
  6626. ++index;
  6627. input_value >>= 1;
  6628. }
  6629. if( ret.empty()) ret.append(string_VkVideoEncodeH264OutputModeFlagBitsEXT(static_cast<VkVideoEncodeH264OutputModeFlagBitsEXT>(0)));
  6630. return ret;
  6631. }
  6632. #endif // VK_ENABLE_BETA_EXTENSIONS
  6633. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6634. static inline const char* string_VkVideoEncodeH264CreateFlagBitsEXT(VkVideoEncodeH264CreateFlagBitsEXT input_value)
  6635. {
  6636. switch (input_value)
  6637. {
  6638. case VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT:
  6639. return "VK_VIDEO_ENCODE_H264_CREATE_DEFAULT_EXT";
  6640. case VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT:
  6641. return "VK_VIDEO_ENCODE_H264_CREATE_RESERVED_0_BIT_EXT";
  6642. default:
  6643. return "Unhandled VkVideoEncodeH264CreateFlagBitsEXT";
  6644. }
  6645. }
  6646. static inline std::string string_VkVideoEncodeH264CreateFlagsEXT(VkVideoEncodeH264CreateFlagsEXT input_value)
  6647. {
  6648. std::string ret;
  6649. int index = 0;
  6650. while(input_value) {
  6651. if (input_value & 1) {
  6652. if( !ret.empty()) ret.append("|");
  6653. ret.append(string_VkVideoEncodeH264CreateFlagBitsEXT(static_cast<VkVideoEncodeH264CreateFlagBitsEXT>(1U << index)));
  6654. }
  6655. ++index;
  6656. input_value >>= 1;
  6657. }
  6658. if( ret.empty()) ret.append(string_VkVideoEncodeH264CreateFlagBitsEXT(static_cast<VkVideoEncodeH264CreateFlagBitsEXT>(0)));
  6659. return ret;
  6660. }
  6661. #endif // VK_ENABLE_BETA_EXTENSIONS
  6662. #ifdef VK_ENABLE_BETA_EXTENSIONS
  6663. static inline const char* string_VkVideoDecodeH264PictureLayoutFlagBitsEXT(VkVideoDecodeH264PictureLayoutFlagBitsEXT input_value)
  6664. {
  6665. switch (input_value)
  6666. {
  6667. case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_EXT:
  6668. return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_EXT";
  6669. case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_EXT:
  6670. return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_EXT";
  6671. case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_EXT:
  6672. return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_EXT";
  6673. default:
  6674. return "Unhandled VkVideoDecodeH264PictureLayoutFlagBitsEXT";
  6675. }
  6676. }
  6677. static inline std::string string_VkVideoDecodeH264PictureLayoutFlagsEXT(VkVideoDecodeH264PictureLayoutFlagsEXT input_value)
  6678. {
  6679. std::string ret;
  6680. int index = 0;
  6681. while(input_value) {
  6682. if (input_value & 1) {
  6683. if( !ret.empty()) ret.append("|");
  6684. ret.append(string_VkVideoDecodeH264PictureLayoutFlagBitsEXT(static_cast<VkVideoDecodeH264PictureLayoutFlagBitsEXT>(1U << index)));
  6685. }
  6686. ++index;
  6687. input_value >>= 1;
  6688. }
  6689. if( ret.empty()) ret.append(string_VkVideoDecodeH264PictureLayoutFlagBitsEXT(static_cast<VkVideoDecodeH264PictureLayoutFlagBitsEXT>(0)));
  6690. return ret;
  6691. }
  6692. #endif // VK_ENABLE_BETA_EXTENSIONS
  6693. static inline const char* string_VkShaderInfoTypeAMD(VkShaderInfoTypeAMD input_value)
  6694. {
  6695. switch (input_value)
  6696. {
  6697. case VK_SHADER_INFO_TYPE_BINARY_AMD:
  6698. return "VK_SHADER_INFO_TYPE_BINARY_AMD";
  6699. case VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD:
  6700. return "VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD";
  6701. case VK_SHADER_INFO_TYPE_STATISTICS_AMD:
  6702. return "VK_SHADER_INFO_TYPE_STATISTICS_AMD";
  6703. default:
  6704. return "Unhandled VkShaderInfoTypeAMD";
  6705. }
  6706. }
  6707. static inline const char* string_VkExternalMemoryHandleTypeFlagBitsNV(VkExternalMemoryHandleTypeFlagBitsNV input_value)
  6708. {
  6709. switch (input_value)
  6710. {
  6711. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV:
  6712. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV";
  6713. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV:
  6714. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV";
  6715. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV:
  6716. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV";
  6717. case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV:
  6718. return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV";
  6719. default:
  6720. return "Unhandled VkExternalMemoryHandleTypeFlagBitsNV";
  6721. }
  6722. }
  6723. static inline std::string string_VkExternalMemoryHandleTypeFlagsNV(VkExternalMemoryHandleTypeFlagsNV input_value)
  6724. {
  6725. std::string ret;
  6726. int index = 0;
  6727. while(input_value) {
  6728. if (input_value & 1) {
  6729. if( !ret.empty()) ret.append("|");
  6730. ret.append(string_VkExternalMemoryHandleTypeFlagBitsNV(static_cast<VkExternalMemoryHandleTypeFlagBitsNV>(1U << index)));
  6731. }
  6732. ++index;
  6733. input_value >>= 1;
  6734. }
  6735. if( ret.empty()) ret.append(string_VkExternalMemoryHandleTypeFlagBitsNV(static_cast<VkExternalMemoryHandleTypeFlagBitsNV>(0)));
  6736. return ret;
  6737. }
  6738. static inline const char* string_VkExternalMemoryFeatureFlagBitsNV(VkExternalMemoryFeatureFlagBitsNV input_value)
  6739. {
  6740. switch (input_value)
  6741. {
  6742. case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV:
  6743. return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV";
  6744. case VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV:
  6745. return "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV";
  6746. case VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV:
  6747. return "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV";
  6748. default:
  6749. return "Unhandled VkExternalMemoryFeatureFlagBitsNV";
  6750. }
  6751. }
  6752. static inline std::string string_VkExternalMemoryFeatureFlagsNV(VkExternalMemoryFeatureFlagsNV input_value)
  6753. {
  6754. std::string ret;
  6755. int index = 0;
  6756. while(input_value) {
  6757. if (input_value & 1) {
  6758. if( !ret.empty()) ret.append("|");
  6759. ret.append(string_VkExternalMemoryFeatureFlagBitsNV(static_cast<VkExternalMemoryFeatureFlagBitsNV>(1U << index)));
  6760. }
  6761. ++index;
  6762. input_value >>= 1;
  6763. }
  6764. if( ret.empty()) ret.append(string_VkExternalMemoryFeatureFlagBitsNV(static_cast<VkExternalMemoryFeatureFlagBitsNV>(0)));
  6765. return ret;
  6766. }
  6767. static inline const char* string_VkValidationCheckEXT(VkValidationCheckEXT input_value)
  6768. {
  6769. switch (input_value)
  6770. {
  6771. case VK_VALIDATION_CHECK_ALL_EXT:
  6772. return "VK_VALIDATION_CHECK_ALL_EXT";
  6773. case VK_VALIDATION_CHECK_SHADERS_EXT:
  6774. return "VK_VALIDATION_CHECK_SHADERS_EXT";
  6775. default:
  6776. return "Unhandled VkValidationCheckEXT";
  6777. }
  6778. }
  6779. static inline const char* string_VkConditionalRenderingFlagBitsEXT(VkConditionalRenderingFlagBitsEXT input_value)
  6780. {
  6781. switch (input_value)
  6782. {
  6783. case VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT:
  6784. return "VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT";
  6785. default:
  6786. return "Unhandled VkConditionalRenderingFlagBitsEXT";
  6787. }
  6788. }
  6789. static inline std::string string_VkConditionalRenderingFlagsEXT(VkConditionalRenderingFlagsEXT input_value)
  6790. {
  6791. std::string ret;
  6792. int index = 0;
  6793. while(input_value) {
  6794. if (input_value & 1) {
  6795. if( !ret.empty()) ret.append("|");
  6796. ret.append(string_VkConditionalRenderingFlagBitsEXT(static_cast<VkConditionalRenderingFlagBitsEXT>(1U << index)));
  6797. }
  6798. ++index;
  6799. input_value >>= 1;
  6800. }
  6801. if( ret.empty()) ret.append(string_VkConditionalRenderingFlagBitsEXT(static_cast<VkConditionalRenderingFlagBitsEXT>(0)));
  6802. return ret;
  6803. }
  6804. static inline const char* string_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT input_value)
  6805. {
  6806. switch (input_value)
  6807. {
  6808. case VK_SURFACE_COUNTER_VBLANK_BIT_EXT:
  6809. return "VK_SURFACE_COUNTER_VBLANK_BIT_EXT";
  6810. default:
  6811. return "Unhandled VkSurfaceCounterFlagBitsEXT";
  6812. }
  6813. }
  6814. static inline std::string string_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsEXT input_value)
  6815. {
  6816. std::string ret;
  6817. int index = 0;
  6818. while(input_value) {
  6819. if (input_value & 1) {
  6820. if( !ret.empty()) ret.append("|");
  6821. ret.append(string_VkSurfaceCounterFlagBitsEXT(static_cast<VkSurfaceCounterFlagBitsEXT>(1U << index)));
  6822. }
  6823. ++index;
  6824. input_value >>= 1;
  6825. }
  6826. if( ret.empty()) ret.append(string_VkSurfaceCounterFlagBitsEXT(static_cast<VkSurfaceCounterFlagBitsEXT>(0)));
  6827. return ret;
  6828. }
  6829. static inline const char* string_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT input_value)
  6830. {
  6831. switch (input_value)
  6832. {
  6833. case VK_DISPLAY_POWER_STATE_OFF_EXT:
  6834. return "VK_DISPLAY_POWER_STATE_OFF_EXT";
  6835. case VK_DISPLAY_POWER_STATE_ON_EXT:
  6836. return "VK_DISPLAY_POWER_STATE_ON_EXT";
  6837. case VK_DISPLAY_POWER_STATE_SUSPEND_EXT:
  6838. return "VK_DISPLAY_POWER_STATE_SUSPEND_EXT";
  6839. default:
  6840. return "Unhandled VkDisplayPowerStateEXT";
  6841. }
  6842. }
  6843. static inline const char* string_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT input_value)
  6844. {
  6845. switch (input_value)
  6846. {
  6847. case VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT:
  6848. return "VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT";
  6849. default:
  6850. return "Unhandled VkDeviceEventTypeEXT";
  6851. }
  6852. }
  6853. static inline const char* string_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT input_value)
  6854. {
  6855. switch (input_value)
  6856. {
  6857. case VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT:
  6858. return "VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT";
  6859. default:
  6860. return "Unhandled VkDisplayEventTypeEXT";
  6861. }
  6862. }
  6863. static inline const char* string_VkViewportCoordinateSwizzleNV(VkViewportCoordinateSwizzleNV input_value)
  6864. {
  6865. switch (input_value)
  6866. {
  6867. case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV:
  6868. return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV";
  6869. case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV:
  6870. return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV";
  6871. case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV:
  6872. return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV";
  6873. case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV:
  6874. return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV";
  6875. case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV:
  6876. return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV";
  6877. case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV:
  6878. return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV";
  6879. case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV:
  6880. return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV";
  6881. case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV:
  6882. return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV";
  6883. default:
  6884. return "Unhandled VkViewportCoordinateSwizzleNV";
  6885. }
  6886. }
  6887. static inline const char* string_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT input_value)
  6888. {
  6889. switch (input_value)
  6890. {
  6891. case VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT:
  6892. return "VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT";
  6893. case VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT:
  6894. return "VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT";
  6895. default:
  6896. return "Unhandled VkDiscardRectangleModeEXT";
  6897. }
  6898. }
  6899. static inline const char* string_VkConservativeRasterizationModeEXT(VkConservativeRasterizationModeEXT input_value)
  6900. {
  6901. switch (input_value)
  6902. {
  6903. case VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT:
  6904. return "VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT";
  6905. case VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT:
  6906. return "VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT";
  6907. case VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT:
  6908. return "VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT";
  6909. default:
  6910. return "Unhandled VkConservativeRasterizationModeEXT";
  6911. }
  6912. }
  6913. static inline const char* string_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeverityFlagBitsEXT input_value)
  6914. {
  6915. switch (input_value)
  6916. {
  6917. case VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT:
  6918. return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT";
  6919. case VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT:
  6920. return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT";
  6921. case VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT:
  6922. return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT";
  6923. case VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT:
  6924. return "VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT";
  6925. default:
  6926. return "Unhandled VkDebugUtilsMessageSeverityFlagBitsEXT";
  6927. }
  6928. }
  6929. static inline std::string string_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtilsMessageSeverityFlagsEXT input_value)
  6930. {
  6931. std::string ret;
  6932. int index = 0;
  6933. while(input_value) {
  6934. if (input_value & 1) {
  6935. if( !ret.empty()) ret.append("|");
  6936. ret.append(string_VkDebugUtilsMessageSeverityFlagBitsEXT(static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>(1U << index)));
  6937. }
  6938. ++index;
  6939. input_value >>= 1;
  6940. }
  6941. if( ret.empty()) ret.append(string_VkDebugUtilsMessageSeverityFlagBitsEXT(static_cast<VkDebugUtilsMessageSeverityFlagBitsEXT>(0)));
  6942. return ret;
  6943. }
  6944. static inline const char* string_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlagBitsEXT input_value)
  6945. {
  6946. switch (input_value)
  6947. {
  6948. case VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT:
  6949. return "VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT";
  6950. case VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT:
  6951. return "VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT";
  6952. case VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT:
  6953. return "VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT";
  6954. default:
  6955. return "Unhandled VkDebugUtilsMessageTypeFlagBitsEXT";
  6956. }
  6957. }
  6958. static inline std::string string_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMessageTypeFlagsEXT input_value)
  6959. {
  6960. std::string ret;
  6961. int index = 0;
  6962. while(input_value) {
  6963. if (input_value & 1) {
  6964. if( !ret.empty()) ret.append("|");
  6965. ret.append(string_VkDebugUtilsMessageTypeFlagBitsEXT(static_cast<VkDebugUtilsMessageTypeFlagBitsEXT>(1U << index)));
  6966. }
  6967. ++index;
  6968. input_value >>= 1;
  6969. }
  6970. if( ret.empty()) ret.append(string_VkDebugUtilsMessageTypeFlagBitsEXT(static_cast<VkDebugUtilsMessageTypeFlagBitsEXT>(0)));
  6971. return ret;
  6972. }
  6973. static inline const char* string_VkSamplerReductionModeEXT(VkSamplerReductionModeEXT input_value)
  6974. {
  6975. switch (input_value)
  6976. {
  6977. case VK_SAMPLER_REDUCTION_MODE_MAX:
  6978. return "VK_SAMPLER_REDUCTION_MODE_MAX";
  6979. case VK_SAMPLER_REDUCTION_MODE_MIN:
  6980. return "VK_SAMPLER_REDUCTION_MODE_MIN";
  6981. case VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE:
  6982. return "VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE";
  6983. default:
  6984. return "Unhandled VkSamplerReductionModeEXT";
  6985. }
  6986. }
  6987. static inline const char* string_VkBlendOverlapEXT(VkBlendOverlapEXT input_value)
  6988. {
  6989. switch (input_value)
  6990. {
  6991. case VK_BLEND_OVERLAP_CONJOINT_EXT:
  6992. return "VK_BLEND_OVERLAP_CONJOINT_EXT";
  6993. case VK_BLEND_OVERLAP_DISJOINT_EXT:
  6994. return "VK_BLEND_OVERLAP_DISJOINT_EXT";
  6995. case VK_BLEND_OVERLAP_UNCORRELATED_EXT:
  6996. return "VK_BLEND_OVERLAP_UNCORRELATED_EXT";
  6997. default:
  6998. return "Unhandled VkBlendOverlapEXT";
  6999. }
  7000. }
  7001. static inline const char* string_VkCoverageModulationModeNV(VkCoverageModulationModeNV input_value)
  7002. {
  7003. switch (input_value)
  7004. {
  7005. case VK_COVERAGE_MODULATION_MODE_ALPHA_NV:
  7006. return "VK_COVERAGE_MODULATION_MODE_ALPHA_NV";
  7007. case VK_COVERAGE_MODULATION_MODE_NONE_NV:
  7008. return "VK_COVERAGE_MODULATION_MODE_NONE_NV";
  7009. case VK_COVERAGE_MODULATION_MODE_RGBA_NV:
  7010. return "VK_COVERAGE_MODULATION_MODE_RGBA_NV";
  7011. case VK_COVERAGE_MODULATION_MODE_RGB_NV:
  7012. return "VK_COVERAGE_MODULATION_MODE_RGB_NV";
  7013. default:
  7014. return "Unhandled VkCoverageModulationModeNV";
  7015. }
  7016. }
  7017. static inline const char* string_VkValidationCacheHeaderVersionEXT(VkValidationCacheHeaderVersionEXT input_value)
  7018. {
  7019. switch (input_value)
  7020. {
  7021. case VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT:
  7022. return "VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT";
  7023. default:
  7024. return "Unhandled VkValidationCacheHeaderVersionEXT";
  7025. }
  7026. }
  7027. static inline const char* string_VkDescriptorBindingFlagBitsEXT(VkDescriptorBindingFlagBitsEXT input_value)
  7028. {
  7029. switch (input_value)
  7030. {
  7031. case VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT:
  7032. return "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT";
  7033. case VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT:
  7034. return "VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT";
  7035. case VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT:
  7036. return "VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT";
  7037. case VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT:
  7038. return "VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT";
  7039. default:
  7040. return "Unhandled VkDescriptorBindingFlagBitsEXT";
  7041. }
  7042. }
  7043. static inline std::string string_VkDescriptorBindingFlagsEXT(VkDescriptorBindingFlagsEXT input_value)
  7044. {
  7045. std::string ret;
  7046. int index = 0;
  7047. while(input_value) {
  7048. if (input_value & 1) {
  7049. if( !ret.empty()) ret.append("|");
  7050. ret.append(string_VkDescriptorBindingFlagBitsEXT(static_cast<VkDescriptorBindingFlagBitsEXT>(1U << index)));
  7051. }
  7052. ++index;
  7053. input_value >>= 1;
  7054. }
  7055. if( ret.empty()) ret.append(string_VkDescriptorBindingFlagBitsEXT(static_cast<VkDescriptorBindingFlagBitsEXT>(0)));
  7056. return ret;
  7057. }
  7058. static inline const char* string_VkShadingRatePaletteEntryNV(VkShadingRatePaletteEntryNV input_value)
  7059. {
  7060. switch (input_value)
  7061. {
  7062. case VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV:
  7063. return "VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV";
  7064. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV:
  7065. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV";
  7066. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV:
  7067. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV";
  7068. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV:
  7069. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV";
  7070. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV:
  7071. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV";
  7072. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV:
  7073. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV";
  7074. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV:
  7075. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV";
  7076. case VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV:
  7077. return "VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV";
  7078. case VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV:
  7079. return "VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV";
  7080. case VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV:
  7081. return "VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV";
  7082. case VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV:
  7083. return "VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV";
  7084. case VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV:
  7085. return "VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV";
  7086. default:
  7087. return "Unhandled VkShadingRatePaletteEntryNV";
  7088. }
  7089. }
  7090. static inline const char* string_VkCoarseSampleOrderTypeNV(VkCoarseSampleOrderTypeNV input_value)
  7091. {
  7092. switch (input_value)
  7093. {
  7094. case VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV:
  7095. return "VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV";
  7096. case VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV:
  7097. return "VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV";
  7098. case VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV:
  7099. return "VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV";
  7100. case VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV:
  7101. return "VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV";
  7102. default:
  7103. return "Unhandled VkCoarseSampleOrderTypeNV";
  7104. }
  7105. }
  7106. static inline const char* string_VkRayTracingShaderGroupTypeKHR(VkRayTracingShaderGroupTypeKHR input_value)
  7107. {
  7108. switch (input_value)
  7109. {
  7110. case VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR:
  7111. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR";
  7112. case VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR:
  7113. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR";
  7114. case VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR:
  7115. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR";
  7116. default:
  7117. return "Unhandled VkRayTracingShaderGroupTypeKHR";
  7118. }
  7119. }
  7120. static inline const char* string_VkRayTracingShaderGroupTypeNV(VkRayTracingShaderGroupTypeNV input_value)
  7121. {
  7122. switch (input_value)
  7123. {
  7124. case VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR:
  7125. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR";
  7126. case VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR:
  7127. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR";
  7128. case VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR:
  7129. return "VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR";
  7130. default:
  7131. return "Unhandled VkRayTracingShaderGroupTypeNV";
  7132. }
  7133. }
  7134. static inline const char* string_VkGeometryTypeKHR(VkGeometryTypeKHR input_value)
  7135. {
  7136. switch (input_value)
  7137. {
  7138. case VK_GEOMETRY_TYPE_AABBS_KHR:
  7139. return "VK_GEOMETRY_TYPE_AABBS_KHR";
  7140. case VK_GEOMETRY_TYPE_INSTANCES_KHR:
  7141. return "VK_GEOMETRY_TYPE_INSTANCES_KHR";
  7142. case VK_GEOMETRY_TYPE_TRIANGLES_KHR:
  7143. return "VK_GEOMETRY_TYPE_TRIANGLES_KHR";
  7144. default:
  7145. return "Unhandled VkGeometryTypeKHR";
  7146. }
  7147. }
  7148. static inline const char* string_VkGeometryTypeNV(VkGeometryTypeNV input_value)
  7149. {
  7150. switch (input_value)
  7151. {
  7152. case VK_GEOMETRY_TYPE_AABBS_KHR:
  7153. return "VK_GEOMETRY_TYPE_AABBS_KHR";
  7154. case VK_GEOMETRY_TYPE_INSTANCES_KHR:
  7155. return "VK_GEOMETRY_TYPE_INSTANCES_KHR";
  7156. case VK_GEOMETRY_TYPE_TRIANGLES_KHR:
  7157. return "VK_GEOMETRY_TYPE_TRIANGLES_KHR";
  7158. default:
  7159. return "Unhandled VkGeometryTypeNV";
  7160. }
  7161. }
  7162. static inline const char* string_VkAccelerationStructureTypeKHR(VkAccelerationStructureTypeKHR input_value)
  7163. {
  7164. switch (input_value)
  7165. {
  7166. case VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR:
  7167. return "VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR";
  7168. case VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR:
  7169. return "VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR";
  7170. case VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR:
  7171. return "VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR";
  7172. default:
  7173. return "Unhandled VkAccelerationStructureTypeKHR";
  7174. }
  7175. }
  7176. static inline const char* string_VkAccelerationStructureTypeNV(VkAccelerationStructureTypeNV input_value)
  7177. {
  7178. switch (input_value)
  7179. {
  7180. case VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR:
  7181. return "VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR";
  7182. case VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR:
  7183. return "VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR";
  7184. case VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR:
  7185. return "VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR";
  7186. default:
  7187. return "Unhandled VkAccelerationStructureTypeNV";
  7188. }
  7189. }
  7190. static inline const char* string_VkGeometryFlagBitsKHR(VkGeometryFlagBitsKHR input_value)
  7191. {
  7192. switch (input_value)
  7193. {
  7194. case VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR:
  7195. return "VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR";
  7196. case VK_GEOMETRY_OPAQUE_BIT_KHR:
  7197. return "VK_GEOMETRY_OPAQUE_BIT_KHR";
  7198. default:
  7199. return "Unhandled VkGeometryFlagBitsKHR";
  7200. }
  7201. }
  7202. static inline std::string string_VkGeometryFlagsKHR(VkGeometryFlagsKHR input_value)
  7203. {
  7204. std::string ret;
  7205. int index = 0;
  7206. while(input_value) {
  7207. if (input_value & 1) {
  7208. if( !ret.empty()) ret.append("|");
  7209. ret.append(string_VkGeometryFlagBitsKHR(static_cast<VkGeometryFlagBitsKHR>(1U << index)));
  7210. }
  7211. ++index;
  7212. input_value >>= 1;
  7213. }
  7214. if( ret.empty()) ret.append(string_VkGeometryFlagBitsKHR(static_cast<VkGeometryFlagBitsKHR>(0)));
  7215. return ret;
  7216. }
  7217. static inline const char* string_VkGeometryFlagBitsNV(VkGeometryFlagBitsNV input_value)
  7218. {
  7219. switch (input_value)
  7220. {
  7221. case VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR:
  7222. return "VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR";
  7223. case VK_GEOMETRY_OPAQUE_BIT_KHR:
  7224. return "VK_GEOMETRY_OPAQUE_BIT_KHR";
  7225. default:
  7226. return "Unhandled VkGeometryFlagBitsNV";
  7227. }
  7228. }
  7229. static inline std::string string_VkGeometryFlagsNV(VkGeometryFlagsNV input_value)
  7230. {
  7231. std::string ret;
  7232. int index = 0;
  7233. while(input_value) {
  7234. if (input_value & 1) {
  7235. if( !ret.empty()) ret.append("|");
  7236. ret.append(string_VkGeometryFlagBitsNV(static_cast<VkGeometryFlagBitsNV>(1U << index)));
  7237. }
  7238. ++index;
  7239. input_value >>= 1;
  7240. }
  7241. if( ret.empty()) ret.append(string_VkGeometryFlagBitsNV(static_cast<VkGeometryFlagBitsNV>(0)));
  7242. return ret;
  7243. }
  7244. static inline const char* string_VkGeometryInstanceFlagBitsKHR(VkGeometryInstanceFlagBitsKHR input_value)
  7245. {
  7246. switch (input_value)
  7247. {
  7248. case VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR:
  7249. return "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR";
  7250. case VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR:
  7251. return "VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR";
  7252. case VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR:
  7253. return "VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR";
  7254. case VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR:
  7255. return "VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR";
  7256. default:
  7257. return "Unhandled VkGeometryInstanceFlagBitsKHR";
  7258. }
  7259. }
  7260. static inline std::string string_VkGeometryInstanceFlagsKHR(VkGeometryInstanceFlagsKHR input_value)
  7261. {
  7262. std::string ret;
  7263. int index = 0;
  7264. while(input_value) {
  7265. if (input_value & 1) {
  7266. if( !ret.empty()) ret.append("|");
  7267. ret.append(string_VkGeometryInstanceFlagBitsKHR(static_cast<VkGeometryInstanceFlagBitsKHR>(1U << index)));
  7268. }
  7269. ++index;
  7270. input_value >>= 1;
  7271. }
  7272. if( ret.empty()) ret.append(string_VkGeometryInstanceFlagBitsKHR(static_cast<VkGeometryInstanceFlagBitsKHR>(0)));
  7273. return ret;
  7274. }
  7275. static inline const char* string_VkGeometryInstanceFlagBitsNV(VkGeometryInstanceFlagBitsNV input_value)
  7276. {
  7277. switch (input_value)
  7278. {
  7279. case VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR:
  7280. return "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR";
  7281. case VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR:
  7282. return "VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR";
  7283. case VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR:
  7284. return "VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR";
  7285. case VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR:
  7286. return "VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR";
  7287. default:
  7288. return "Unhandled VkGeometryInstanceFlagBitsNV";
  7289. }
  7290. }
  7291. static inline std::string string_VkGeometryInstanceFlagsNV(VkGeometryInstanceFlagsNV input_value)
  7292. {
  7293. std::string ret;
  7294. int index = 0;
  7295. while(input_value) {
  7296. if (input_value & 1) {
  7297. if( !ret.empty()) ret.append("|");
  7298. ret.append(string_VkGeometryInstanceFlagBitsNV(static_cast<VkGeometryInstanceFlagBitsNV>(1U << index)));
  7299. }
  7300. ++index;
  7301. input_value >>= 1;
  7302. }
  7303. if( ret.empty()) ret.append(string_VkGeometryInstanceFlagBitsNV(static_cast<VkGeometryInstanceFlagBitsNV>(0)));
  7304. return ret;
  7305. }
  7306. static inline const char* string_VkBuildAccelerationStructureFlagBitsKHR(VkBuildAccelerationStructureFlagBitsKHR input_value)
  7307. {
  7308. switch (input_value)
  7309. {
  7310. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR:
  7311. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR";
  7312. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR:
  7313. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR";
  7314. case VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR:
  7315. return "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR";
  7316. case VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV:
  7317. return "VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV";
  7318. case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR:
  7319. return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR";
  7320. case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR:
  7321. return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR";
  7322. default:
  7323. return "Unhandled VkBuildAccelerationStructureFlagBitsKHR";
  7324. }
  7325. }
  7326. static inline std::string string_VkBuildAccelerationStructureFlagsKHR(VkBuildAccelerationStructureFlagsKHR input_value)
  7327. {
  7328. std::string ret;
  7329. int index = 0;
  7330. while(input_value) {
  7331. if (input_value & 1) {
  7332. if( !ret.empty()) ret.append("|");
  7333. ret.append(string_VkBuildAccelerationStructureFlagBitsKHR(static_cast<VkBuildAccelerationStructureFlagBitsKHR>(1U << index)));
  7334. }
  7335. ++index;
  7336. input_value >>= 1;
  7337. }
  7338. if( ret.empty()) ret.append(string_VkBuildAccelerationStructureFlagBitsKHR(static_cast<VkBuildAccelerationStructureFlagBitsKHR>(0)));
  7339. return ret;
  7340. }
  7341. static inline const char* string_VkBuildAccelerationStructureFlagBitsNV(VkBuildAccelerationStructureFlagBitsNV input_value)
  7342. {
  7343. switch (input_value)
  7344. {
  7345. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR:
  7346. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR";
  7347. case VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR:
  7348. return "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR";
  7349. case VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR:
  7350. return "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR";
  7351. case VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV:
  7352. return "VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV";
  7353. case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR:
  7354. return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR";
  7355. case VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR:
  7356. return "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR";
  7357. default:
  7358. return "Unhandled VkBuildAccelerationStructureFlagBitsNV";
  7359. }
  7360. }
  7361. static inline std::string string_VkBuildAccelerationStructureFlagsNV(VkBuildAccelerationStructureFlagsNV input_value)
  7362. {
  7363. std::string ret;
  7364. int index = 0;
  7365. while(input_value) {
  7366. if (input_value & 1) {
  7367. if( !ret.empty()) ret.append("|");
  7368. ret.append(string_VkBuildAccelerationStructureFlagBitsNV(static_cast<VkBuildAccelerationStructureFlagBitsNV>(1U << index)));
  7369. }
  7370. ++index;
  7371. input_value >>= 1;
  7372. }
  7373. if( ret.empty()) ret.append(string_VkBuildAccelerationStructureFlagBitsNV(static_cast<VkBuildAccelerationStructureFlagBitsNV>(0)));
  7374. return ret;
  7375. }
  7376. static inline const char* string_VkCopyAccelerationStructureModeKHR(VkCopyAccelerationStructureModeKHR input_value)
  7377. {
  7378. switch (input_value)
  7379. {
  7380. case VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR:
  7381. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR";
  7382. case VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR:
  7383. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR";
  7384. case VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR:
  7385. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR";
  7386. case VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR:
  7387. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR";
  7388. default:
  7389. return "Unhandled VkCopyAccelerationStructureModeKHR";
  7390. }
  7391. }
  7392. static inline const char* string_VkCopyAccelerationStructureModeNV(VkCopyAccelerationStructureModeNV input_value)
  7393. {
  7394. switch (input_value)
  7395. {
  7396. case VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR:
  7397. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR";
  7398. case VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR:
  7399. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR";
  7400. case VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR:
  7401. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR";
  7402. case VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR:
  7403. return "VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR";
  7404. default:
  7405. return "Unhandled VkCopyAccelerationStructureModeNV";
  7406. }
  7407. }
  7408. static inline const char* string_VkAccelerationStructureMemoryRequirementsTypeNV(VkAccelerationStructureMemoryRequirementsTypeNV input_value)
  7409. {
  7410. switch (input_value)
  7411. {
  7412. case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV:
  7413. return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV";
  7414. case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV:
  7415. return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV";
  7416. case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV:
  7417. return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV";
  7418. default:
  7419. return "Unhandled VkAccelerationStructureMemoryRequirementsTypeNV";
  7420. }
  7421. }
  7422. static inline const char* string_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT input_value)
  7423. {
  7424. switch (input_value)
  7425. {
  7426. case VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT:
  7427. return "VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT";
  7428. case VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT:
  7429. return "VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT";
  7430. case VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT:
  7431. return "VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT";
  7432. case VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT:
  7433. return "VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT";
  7434. default:
  7435. return "Unhandled VkQueueGlobalPriorityEXT";
  7436. }
  7437. }
  7438. static inline const char* string_VkTimeDomainEXT(VkTimeDomainEXT input_value)
  7439. {
  7440. switch (input_value)
  7441. {
  7442. case VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT:
  7443. return "VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT";
  7444. case VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT:
  7445. return "VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT";
  7446. case VK_TIME_DOMAIN_DEVICE_EXT:
  7447. return "VK_TIME_DOMAIN_DEVICE_EXT";
  7448. case VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT:
  7449. return "VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT";
  7450. default:
  7451. return "Unhandled VkTimeDomainEXT";
  7452. }
  7453. }
  7454. static inline const char* string_VkMemoryOverallocationBehaviorAMD(VkMemoryOverallocationBehaviorAMD input_value)
  7455. {
  7456. switch (input_value)
  7457. {
  7458. case VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD:
  7459. return "VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD";
  7460. case VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD:
  7461. return "VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD";
  7462. case VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD:
  7463. return "VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD";
  7464. default:
  7465. return "Unhandled VkMemoryOverallocationBehaviorAMD";
  7466. }
  7467. }
  7468. static inline const char* string_VkPipelineCreationFeedbackFlagBitsEXT(VkPipelineCreationFeedbackFlagBitsEXT input_value)
  7469. {
  7470. switch (input_value)
  7471. {
  7472. case VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT:
  7473. return "VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT";
  7474. case VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT:
  7475. return "VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT";
  7476. case VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT:
  7477. return "VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT";
  7478. default:
  7479. return "Unhandled VkPipelineCreationFeedbackFlagBitsEXT";
  7480. }
  7481. }
  7482. static inline std::string string_VkPipelineCreationFeedbackFlagsEXT(VkPipelineCreationFeedbackFlagsEXT input_value)
  7483. {
  7484. std::string ret;
  7485. int index = 0;
  7486. while(input_value) {
  7487. if (input_value & 1) {
  7488. if( !ret.empty()) ret.append("|");
  7489. ret.append(string_VkPipelineCreationFeedbackFlagBitsEXT(static_cast<VkPipelineCreationFeedbackFlagBitsEXT>(1U << index)));
  7490. }
  7491. ++index;
  7492. input_value >>= 1;
  7493. }
  7494. if( ret.empty()) ret.append(string_VkPipelineCreationFeedbackFlagBitsEXT(static_cast<VkPipelineCreationFeedbackFlagBitsEXT>(0)));
  7495. return ret;
  7496. }
  7497. static inline const char* string_VkPerformanceConfigurationTypeINTEL(VkPerformanceConfigurationTypeINTEL input_value)
  7498. {
  7499. switch (input_value)
  7500. {
  7501. case VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL:
  7502. return "VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL";
  7503. default:
  7504. return "Unhandled VkPerformanceConfigurationTypeINTEL";
  7505. }
  7506. }
  7507. static inline const char* string_VkQueryPoolSamplingModeINTEL(VkQueryPoolSamplingModeINTEL input_value)
  7508. {
  7509. switch (input_value)
  7510. {
  7511. case VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL:
  7512. return "VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL";
  7513. default:
  7514. return "Unhandled VkQueryPoolSamplingModeINTEL";
  7515. }
  7516. }
  7517. static inline const char* string_VkPerformanceOverrideTypeINTEL(VkPerformanceOverrideTypeINTEL input_value)
  7518. {
  7519. switch (input_value)
  7520. {
  7521. case VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL:
  7522. return "VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL";
  7523. case VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL:
  7524. return "VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL";
  7525. default:
  7526. return "Unhandled VkPerformanceOverrideTypeINTEL";
  7527. }
  7528. }
  7529. static inline const char* string_VkPerformanceParameterTypeINTEL(VkPerformanceParameterTypeINTEL input_value)
  7530. {
  7531. switch (input_value)
  7532. {
  7533. case VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL:
  7534. return "VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL";
  7535. case VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL:
  7536. return "VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL";
  7537. default:
  7538. return "Unhandled VkPerformanceParameterTypeINTEL";
  7539. }
  7540. }
  7541. static inline const char* string_VkPerformanceValueTypeINTEL(VkPerformanceValueTypeINTEL input_value)
  7542. {
  7543. switch (input_value)
  7544. {
  7545. case VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL:
  7546. return "VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL";
  7547. case VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL:
  7548. return "VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL";
  7549. case VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL:
  7550. return "VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL";
  7551. case VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL:
  7552. return "VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL";
  7553. case VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL:
  7554. return "VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL";
  7555. default:
  7556. return "Unhandled VkPerformanceValueTypeINTEL";
  7557. }
  7558. }
  7559. static inline const char* string_VkToolPurposeFlagBitsEXT(VkToolPurposeFlagBitsEXT input_value)
  7560. {
  7561. switch (input_value)
  7562. {
  7563. case VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT:
  7564. return "VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT";
  7565. case VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT:
  7566. return "VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT";
  7567. case VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT:
  7568. return "VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT";
  7569. case VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT:
  7570. return "VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT";
  7571. case VK_TOOL_PURPOSE_PROFILING_BIT_EXT:
  7572. return "VK_TOOL_PURPOSE_PROFILING_BIT_EXT";
  7573. case VK_TOOL_PURPOSE_TRACING_BIT_EXT:
  7574. return "VK_TOOL_PURPOSE_TRACING_BIT_EXT";
  7575. case VK_TOOL_PURPOSE_VALIDATION_BIT_EXT:
  7576. return "VK_TOOL_PURPOSE_VALIDATION_BIT_EXT";
  7577. default:
  7578. return "Unhandled VkToolPurposeFlagBitsEXT";
  7579. }
  7580. }
  7581. static inline std::string string_VkToolPurposeFlagsEXT(VkToolPurposeFlagsEXT input_value)
  7582. {
  7583. std::string ret;
  7584. int index = 0;
  7585. while(input_value) {
  7586. if (input_value & 1) {
  7587. if( !ret.empty()) ret.append("|");
  7588. ret.append(string_VkToolPurposeFlagBitsEXT(static_cast<VkToolPurposeFlagBitsEXT>(1U << index)));
  7589. }
  7590. ++index;
  7591. input_value >>= 1;
  7592. }
  7593. if( ret.empty()) ret.append(string_VkToolPurposeFlagBitsEXT(static_cast<VkToolPurposeFlagBitsEXT>(0)));
  7594. return ret;
  7595. }
  7596. static inline const char* string_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT input_value)
  7597. {
  7598. switch (input_value)
  7599. {
  7600. case VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT:
  7601. return "VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT";
  7602. case VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT:
  7603. return "VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT";
  7604. case VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT:
  7605. return "VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT";
  7606. case VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT:
  7607. return "VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT";
  7608. case VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT:
  7609. return "VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT";
  7610. default:
  7611. return "Unhandled VkValidationFeatureEnableEXT";
  7612. }
  7613. }
  7614. static inline const char* string_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT input_value)
  7615. {
  7616. switch (input_value)
  7617. {
  7618. case VK_VALIDATION_FEATURE_DISABLE_ALL_EXT:
  7619. return "VK_VALIDATION_FEATURE_DISABLE_ALL_EXT";
  7620. case VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT:
  7621. return "VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT";
  7622. case VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT:
  7623. return "VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT";
  7624. case VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT:
  7625. return "VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT";
  7626. case VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT:
  7627. return "VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT";
  7628. case VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT:
  7629. return "VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT";
  7630. case VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT:
  7631. return "VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT";
  7632. case VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT:
  7633. return "VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT";
  7634. default:
  7635. return "Unhandled VkValidationFeatureDisableEXT";
  7636. }
  7637. }
  7638. static inline const char* string_VkComponentTypeNV(VkComponentTypeNV input_value)
  7639. {
  7640. switch (input_value)
  7641. {
  7642. case VK_COMPONENT_TYPE_FLOAT16_NV:
  7643. return "VK_COMPONENT_TYPE_FLOAT16_NV";
  7644. case VK_COMPONENT_TYPE_FLOAT32_NV:
  7645. return "VK_COMPONENT_TYPE_FLOAT32_NV";
  7646. case VK_COMPONENT_TYPE_FLOAT64_NV:
  7647. return "VK_COMPONENT_TYPE_FLOAT64_NV";
  7648. case VK_COMPONENT_TYPE_SINT16_NV:
  7649. return "VK_COMPONENT_TYPE_SINT16_NV";
  7650. case VK_COMPONENT_TYPE_SINT32_NV:
  7651. return "VK_COMPONENT_TYPE_SINT32_NV";
  7652. case VK_COMPONENT_TYPE_SINT64_NV:
  7653. return "VK_COMPONENT_TYPE_SINT64_NV";
  7654. case VK_COMPONENT_TYPE_SINT8_NV:
  7655. return "VK_COMPONENT_TYPE_SINT8_NV";
  7656. case VK_COMPONENT_TYPE_UINT16_NV:
  7657. return "VK_COMPONENT_TYPE_UINT16_NV";
  7658. case VK_COMPONENT_TYPE_UINT32_NV:
  7659. return "VK_COMPONENT_TYPE_UINT32_NV";
  7660. case VK_COMPONENT_TYPE_UINT64_NV:
  7661. return "VK_COMPONENT_TYPE_UINT64_NV";
  7662. case VK_COMPONENT_TYPE_UINT8_NV:
  7663. return "VK_COMPONENT_TYPE_UINT8_NV";
  7664. default:
  7665. return "Unhandled VkComponentTypeNV";
  7666. }
  7667. }
  7668. static inline const char* string_VkScopeNV(VkScopeNV input_value)
  7669. {
  7670. switch (input_value)
  7671. {
  7672. case VK_SCOPE_DEVICE_NV:
  7673. return "VK_SCOPE_DEVICE_NV";
  7674. case VK_SCOPE_QUEUE_FAMILY_NV:
  7675. return "VK_SCOPE_QUEUE_FAMILY_NV";
  7676. case VK_SCOPE_SUBGROUP_NV:
  7677. return "VK_SCOPE_SUBGROUP_NV";
  7678. case VK_SCOPE_WORKGROUP_NV:
  7679. return "VK_SCOPE_WORKGROUP_NV";
  7680. default:
  7681. return "Unhandled VkScopeNV";
  7682. }
  7683. }
  7684. static inline const char* string_VkCoverageReductionModeNV(VkCoverageReductionModeNV input_value)
  7685. {
  7686. switch (input_value)
  7687. {
  7688. case VK_COVERAGE_REDUCTION_MODE_MERGE_NV:
  7689. return "VK_COVERAGE_REDUCTION_MODE_MERGE_NV";
  7690. case VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV:
  7691. return "VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV";
  7692. default:
  7693. return "Unhandled VkCoverageReductionModeNV";
  7694. }
  7695. }
  7696. static inline const char* string_VkProvokingVertexModeEXT(VkProvokingVertexModeEXT input_value)
  7697. {
  7698. switch (input_value)
  7699. {
  7700. case VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT:
  7701. return "VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT";
  7702. case VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT:
  7703. return "VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT";
  7704. default:
  7705. return "Unhandled VkProvokingVertexModeEXT";
  7706. }
  7707. }
  7708. #ifdef VK_USE_PLATFORM_WIN32_KHR
  7709. static inline const char* string_VkFullScreenExclusiveEXT(VkFullScreenExclusiveEXT input_value)
  7710. {
  7711. switch (input_value)
  7712. {
  7713. case VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT:
  7714. return "VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT";
  7715. case VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT:
  7716. return "VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT";
  7717. case VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT:
  7718. return "VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT";
  7719. case VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT:
  7720. return "VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT";
  7721. default:
  7722. return "Unhandled VkFullScreenExclusiveEXT";
  7723. }
  7724. }
  7725. #endif // VK_USE_PLATFORM_WIN32_KHR
  7726. static inline const char* string_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT input_value)
  7727. {
  7728. switch (input_value)
  7729. {
  7730. case VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT:
  7731. return "VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT";
  7732. case VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT:
  7733. return "VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT";
  7734. case VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT:
  7735. return "VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT";
  7736. case VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT:
  7737. return "VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT";
  7738. default:
  7739. return "Unhandled VkLineRasterizationModeEXT";
  7740. }
  7741. }
  7742. static inline const char* string_VkIndirectStateFlagBitsNV(VkIndirectStateFlagBitsNV input_value)
  7743. {
  7744. switch (input_value)
  7745. {
  7746. case VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV:
  7747. return "VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV";
  7748. default:
  7749. return "Unhandled VkIndirectStateFlagBitsNV";
  7750. }
  7751. }
  7752. static inline std::string string_VkIndirectStateFlagsNV(VkIndirectStateFlagsNV input_value)
  7753. {
  7754. std::string ret;
  7755. int index = 0;
  7756. while(input_value) {
  7757. if (input_value & 1) {
  7758. if( !ret.empty()) ret.append("|");
  7759. ret.append(string_VkIndirectStateFlagBitsNV(static_cast<VkIndirectStateFlagBitsNV>(1U << index)));
  7760. }
  7761. ++index;
  7762. input_value >>= 1;
  7763. }
  7764. if( ret.empty()) ret.append(string_VkIndirectStateFlagBitsNV(static_cast<VkIndirectStateFlagBitsNV>(0)));
  7765. return ret;
  7766. }
  7767. static inline const char* string_VkIndirectCommandsTokenTypeNV(VkIndirectCommandsTokenTypeNV input_value)
  7768. {
  7769. switch (input_value)
  7770. {
  7771. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV:
  7772. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV";
  7773. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV:
  7774. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV";
  7775. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV:
  7776. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV";
  7777. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV:
  7778. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV";
  7779. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV:
  7780. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV";
  7781. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV:
  7782. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV";
  7783. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV:
  7784. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV";
  7785. case VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV:
  7786. return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV";
  7787. default:
  7788. return "Unhandled VkIndirectCommandsTokenTypeNV";
  7789. }
  7790. }
  7791. static inline const char* string_VkIndirectCommandsLayoutUsageFlagBitsNV(VkIndirectCommandsLayoutUsageFlagBitsNV input_value)
  7792. {
  7793. switch (input_value)
  7794. {
  7795. case VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV:
  7796. return "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV";
  7797. case VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV:
  7798. return "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV";
  7799. case VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV:
  7800. return "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV";
  7801. default:
  7802. return "Unhandled VkIndirectCommandsLayoutUsageFlagBitsNV";
  7803. }
  7804. }
  7805. static inline std::string string_VkIndirectCommandsLayoutUsageFlagsNV(VkIndirectCommandsLayoutUsageFlagsNV input_value)
  7806. {
  7807. std::string ret;
  7808. int index = 0;
  7809. while(input_value) {
  7810. if (input_value & 1) {
  7811. if( !ret.empty()) ret.append("|");
  7812. ret.append(string_VkIndirectCommandsLayoutUsageFlagBitsNV(static_cast<VkIndirectCommandsLayoutUsageFlagBitsNV>(1U << index)));
  7813. }
  7814. ++index;
  7815. input_value >>= 1;
  7816. }
  7817. if( ret.empty()) ret.append(string_VkIndirectCommandsLayoutUsageFlagBitsNV(static_cast<VkIndirectCommandsLayoutUsageFlagBitsNV>(0)));
  7818. return ret;
  7819. }
  7820. static inline const char* string_VkDeviceMemoryReportEventTypeEXT(VkDeviceMemoryReportEventTypeEXT input_value)
  7821. {
  7822. switch (input_value)
  7823. {
  7824. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT:
  7825. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT";
  7826. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT:
  7827. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT";
  7828. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT:
  7829. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT";
  7830. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT:
  7831. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT";
  7832. case VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT:
  7833. return "VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT";
  7834. default:
  7835. return "Unhandled VkDeviceMemoryReportEventTypeEXT";
  7836. }
  7837. }
  7838. static inline const char* string_VkDeviceDiagnosticsConfigFlagBitsNV(VkDeviceDiagnosticsConfigFlagBitsNV input_value)
  7839. {
  7840. switch (input_value)
  7841. {
  7842. case VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV:
  7843. return "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV";
  7844. case VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV:
  7845. return "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV";
  7846. case VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV:
  7847. return "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV";
  7848. default:
  7849. return "Unhandled VkDeviceDiagnosticsConfigFlagBitsNV";
  7850. }
  7851. }
  7852. static inline std::string string_VkDeviceDiagnosticsConfigFlagsNV(VkDeviceDiagnosticsConfigFlagsNV input_value)
  7853. {
  7854. std::string ret;
  7855. int index = 0;
  7856. while(input_value) {
  7857. if (input_value & 1) {
  7858. if( !ret.empty()) ret.append("|");
  7859. ret.append(string_VkDeviceDiagnosticsConfigFlagBitsNV(static_cast<VkDeviceDiagnosticsConfigFlagBitsNV>(1U << index)));
  7860. }
  7861. ++index;
  7862. input_value >>= 1;
  7863. }
  7864. if( ret.empty()) ret.append(string_VkDeviceDiagnosticsConfigFlagBitsNV(static_cast<VkDeviceDiagnosticsConfigFlagBitsNV>(0)));
  7865. return ret;
  7866. }
  7867. static inline const char* string_VkFragmentShadingRateTypeNV(VkFragmentShadingRateTypeNV input_value)
  7868. {
  7869. switch (input_value)
  7870. {
  7871. case VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV:
  7872. return "VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV";
  7873. case VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV:
  7874. return "VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV";
  7875. default:
  7876. return "Unhandled VkFragmentShadingRateTypeNV";
  7877. }
  7878. }
  7879. static inline const char* string_VkFragmentShadingRateNV(VkFragmentShadingRateNV input_value)
  7880. {
  7881. switch (input_value)
  7882. {
  7883. case VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV:
  7884. return "VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV";
  7885. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV:
  7886. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV";
  7887. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV:
  7888. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV";
  7889. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV:
  7890. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV";
  7891. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV:
  7892. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV";
  7893. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV:
  7894. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV";
  7895. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV:
  7896. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV";
  7897. case VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV:
  7898. return "VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV";
  7899. case VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV:
  7900. return "VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV";
  7901. case VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV:
  7902. return "VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV";
  7903. case VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV:
  7904. return "VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV";
  7905. case VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV:
  7906. return "VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV";
  7907. default:
  7908. return "Unhandled VkFragmentShadingRateNV";
  7909. }
  7910. }
  7911. static inline const char* string_VkAccelerationStructureMotionInstanceTypeNV(VkAccelerationStructureMotionInstanceTypeNV input_value)
  7912. {
  7913. switch (input_value)
  7914. {
  7915. case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV:
  7916. return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV";
  7917. case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV:
  7918. return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV";
  7919. case VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV:
  7920. return "VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV";
  7921. default:
  7922. return "Unhandled VkAccelerationStructureMotionInstanceTypeNV";
  7923. }
  7924. }
  7925. static inline const char* string_VkBuildAccelerationStructureModeKHR(VkBuildAccelerationStructureModeKHR input_value)
  7926. {
  7927. switch (input_value)
  7928. {
  7929. case VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR:
  7930. return "VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR";
  7931. case VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR:
  7932. return "VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR";
  7933. default:
  7934. return "Unhandled VkBuildAccelerationStructureModeKHR";
  7935. }
  7936. }
  7937. static inline const char* string_VkAccelerationStructureBuildTypeKHR(VkAccelerationStructureBuildTypeKHR input_value)
  7938. {
  7939. switch (input_value)
  7940. {
  7941. case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR:
  7942. return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR";
  7943. case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR:
  7944. return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR";
  7945. case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR:
  7946. return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR";
  7947. default:
  7948. return "Unhandled VkAccelerationStructureBuildTypeKHR";
  7949. }
  7950. }
  7951. static inline const char* string_VkAccelerationStructureCreateFlagBitsKHR(VkAccelerationStructureCreateFlagBitsKHR input_value)
  7952. {
  7953. switch (input_value)
  7954. {
  7955. case VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR:
  7956. return "VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR";
  7957. case VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV:
  7958. return "VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV";
  7959. default:
  7960. return "Unhandled VkAccelerationStructureCreateFlagBitsKHR";
  7961. }
  7962. }
  7963. static inline std::string string_VkAccelerationStructureCreateFlagsKHR(VkAccelerationStructureCreateFlagsKHR input_value)
  7964. {
  7965. std::string ret;
  7966. int index = 0;
  7967. while(input_value) {
  7968. if (input_value & 1) {
  7969. if( !ret.empty()) ret.append("|");
  7970. ret.append(string_VkAccelerationStructureCreateFlagBitsKHR(static_cast<VkAccelerationStructureCreateFlagBitsKHR>(1U << index)));
  7971. }
  7972. ++index;
  7973. input_value >>= 1;
  7974. }
  7975. if( ret.empty()) ret.append(string_VkAccelerationStructureCreateFlagBitsKHR(static_cast<VkAccelerationStructureCreateFlagBitsKHR>(0)));
  7976. return ret;
  7977. }
  7978. static inline const char* string_VkAccelerationStructureCompatibilityKHR(VkAccelerationStructureCompatibilityKHR input_value)
  7979. {
  7980. switch (input_value)
  7981. {
  7982. case VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR:
  7983. return "VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR";
  7984. case VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR:
  7985. return "VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR";
  7986. default:
  7987. return "Unhandled VkAccelerationStructureCompatibilityKHR";
  7988. }
  7989. }
  7990. static inline const char* string_VkShaderGroupShaderKHR(VkShaderGroupShaderKHR input_value)
  7991. {
  7992. switch (input_value)
  7993. {
  7994. case VK_SHADER_GROUP_SHADER_ANY_HIT_KHR:
  7995. return "VK_SHADER_GROUP_SHADER_ANY_HIT_KHR";
  7996. case VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR:
  7997. return "VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR";
  7998. case VK_SHADER_GROUP_SHADER_GENERAL_KHR:
  7999. return "VK_SHADER_GROUP_SHADER_GENERAL_KHR";
  8000. case VK_SHADER_GROUP_SHADER_INTERSECTION_KHR:
  8001. return "VK_SHADER_GROUP_SHADER_INTERSECTION_KHR";
  8002. default:
  8003. return "Unhandled VkShaderGroupShaderKHR";
  8004. }
  8005. }
  8006. static inline const char * GetPhysDevFeatureString(uint32_t index) {
  8007. const char * IndexToPhysDevFeatureString[] = {
  8008. "robustBufferAccess",
  8009. "fullDrawIndexUint32",
  8010. "imageCubeArray",
  8011. "independentBlend",
  8012. "geometryShader",
  8013. "tessellationShader",
  8014. "sampleRateShading",
  8015. "dualSrcBlend",
  8016. "logicOp",
  8017. "multiDrawIndirect",
  8018. "drawIndirectFirstInstance",
  8019. "depthClamp",
  8020. "depthBiasClamp",
  8021. "fillModeNonSolid",
  8022. "depthBounds",
  8023. "wideLines",
  8024. "largePoints",
  8025. "alphaToOne",
  8026. "multiViewport",
  8027. "samplerAnisotropy",
  8028. "textureCompressionETC2",
  8029. "textureCompressionASTC_LDR",
  8030. "textureCompressionBC",
  8031. "occlusionQueryPrecise",
  8032. "pipelineStatisticsQuery",
  8033. "vertexPipelineStoresAndAtomics",
  8034. "fragmentStoresAndAtomics",
  8035. "shaderTessellationAndGeometryPointSize",
  8036. "shaderImageGatherExtended",
  8037. "shaderStorageImageExtendedFormats",
  8038. "shaderStorageImageMultisample",
  8039. "shaderStorageImageReadWithoutFormat",
  8040. "shaderStorageImageWriteWithoutFormat",
  8041. "shaderUniformBufferArrayDynamicIndexing",
  8042. "shaderSampledImageArrayDynamicIndexing",
  8043. "shaderStorageBufferArrayDynamicIndexing",
  8044. "shaderStorageImageArrayDynamicIndexing",
  8045. "shaderClipDistance",
  8046. "shaderCullDistance",
  8047. "shaderFloat64",
  8048. "shaderInt64",
  8049. "shaderInt16",
  8050. "shaderResourceResidency",
  8051. "shaderResourceMinLod",
  8052. "sparseBinding",
  8053. "sparseResidencyBuffer",
  8054. "sparseResidencyImage2D",
  8055. "sparseResidencyImage3D",
  8056. "sparseResidency2Samples",
  8057. "sparseResidency4Samples",
  8058. "sparseResidency8Samples",
  8059. "sparseResidency16Samples",
  8060. "sparseResidencyAliased",
  8061. "variableMultisampleRate",
  8062. "inheritedQueries",
  8063. };
  8064. return IndexToPhysDevFeatureString[index];
  8065. }
  8066. static inline bool IsDuplicatePnext(VkStructureType input_value)
  8067. {
  8068. switch (input_value)
  8069. {
  8070. case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:
  8071. case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT:
  8072. case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT:
  8073. return true;
  8074. default:
  8075. return false;
  8076. }
  8077. }