[{"data":1,"prerenderedAt":640},["ShallowReactive",2],{"$fBu7mpIekr9suNBtSwYz70Icca3pf1wCYvPbogm8yn4k":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":639,"_id":4},"VkPipelineCacheHeaderVersionDataGraphQCOM","Structure describing the layout of the pipeline cache header for data graphs","VK_QCOM_data_graph_model","structs",[],{"type":10,"children":11,"toc":637},"root",[12,20,332,429,469,478,483,493,581,631],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17],{"type":18,"value":19},"text","The data graph pipeline cache header is defined as:",{"type":13,"tag":21,"props":22,"children":23},"code-group",{},[24,143],{"type":13,"tag":25,"props":26,"children":32},"pre",{"className":27,"code":28,"filename":29,"language":30,"meta":31,"style":31},"language-c shiki shiki-themes github-light-default github-dark-default","typedef struct VkPipelineCacheHeaderVersionDataGraphQCOM {\n // The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout.;\n uint32_t headerSize;\n VkPipelineCacheHeaderVersion headerVersion;\n VkDataGraphModelCacheTypeQCOM cacheType;\n uint32_t cacheVersion;\n uint32_t toolchainVersion[VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM];\n} VkPipelineCacheHeaderVersionDataGraphQCOM;\n","C","c","",[33],{"type":13,"tag":34,"props":35,"children":36},"code",{"__ignoreMap":31},[37,60,70,84,93,102,115,134],{"type":13,"tag":38,"props":39,"children":42},"span",{"class":40,"line":41},"line",1,[43,49,54],{"type":13,"tag":38,"props":44,"children":46},{"style":45},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[47],{"type":18,"value":48},"typedef",{"type":13,"tag":38,"props":50,"children":51},{"style":45},[52],{"type":18,"value":53}," struct",{"type":13,"tag":38,"props":55,"children":57},{"style":56},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[58],{"type":18,"value":59}," VkPipelineCacheHeaderVersionDataGraphQCOM {\n",{"type":13,"tag":38,"props":61,"children":63},{"class":40,"line":62},2,[64],{"type":13,"tag":38,"props":65,"children":67},{"style":66},"--shiki-default:#6E7781;--shiki-dark:#8B949E",[68],{"type":18,"value":69}," // The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout.;\n",{"type":13,"tag":38,"props":71,"children":73},{"class":40,"line":72},3,[74,79],{"type":13,"tag":38,"props":75,"children":76},{"style":45},[77],{"type":18,"value":78}," uint32_t",{"type":13,"tag":38,"props":80,"children":81},{"style":56},[82],{"type":18,"value":83}," headerSize;\n",{"type":13,"tag":38,"props":85,"children":87},{"class":40,"line":86},4,[88],{"type":13,"tag":38,"props":89,"children":90},{"style":56},[91],{"type":18,"value":92}," VkPipelineCacheHeaderVersion headerVersion;\n",{"type":13,"tag":38,"props":94,"children":96},{"class":40,"line":95},5,[97],{"type":13,"tag":38,"props":98,"children":99},{"style":56},[100],{"type":18,"value":101}," VkDataGraphModelCacheTypeQCOM cacheType;\n",{"type":13,"tag":38,"props":103,"children":105},{"class":40,"line":104},6,[106,110],{"type":13,"tag":38,"props":107,"children":108},{"style":45},[109],{"type":18,"value":78},{"type":13,"tag":38,"props":111,"children":112},{"style":56},[113],{"type":18,"value":114}," cacheVersion;\n",{"type":13,"tag":38,"props":116,"children":118},{"class":40,"line":117},7,[119,123,129],{"type":13,"tag":38,"props":120,"children":121},{"style":45},[122],{"type":18,"value":78},{"type":13,"tag":38,"props":124,"children":126},{"style":125},"--shiki-default:#953800;--shiki-dark:#FFA657",[127],{"type":18,"value":128}," toolchainVersion",{"type":13,"tag":38,"props":130,"children":131},{"style":56},[132],{"type":18,"value":133},"[VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM];\n",{"type":13,"tag":38,"props":135,"children":137},{"class":40,"line":136},8,[138],{"type":13,"tag":38,"props":139,"children":140},{"style":56},[141],{"type":18,"value":142},"} VkPipelineCacheHeaderVersionDataGraphQCOM;\n",{"type":13,"tag":25,"props":144,"children":149},{"className":145,"code":146,"filename":147,"language":148,"meta":31,"style":31},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct PipelineCacheHeaderVersionDataGraphQCOM {\n /// The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout.\n header_size: u32,\n header_version: vk::PipelineCacheHeaderVersion,\n cache_type: vk::DataGraphModelCacheTypeQCOM,\n cache_version: u32,\n toolchain_version: [u32; VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM],\n}\n","Rust","rs",[150],{"type":13,"tag":34,"props":151,"children":152},{"__ignoreMap":31},[153,175,183,206,237,266,286,324],{"type":13,"tag":38,"props":154,"children":155},{"class":40,"line":41},[156,161,165,170],{"type":13,"tag":38,"props":157,"children":158},{"style":45},[159],{"type":18,"value":160},"pub",{"type":13,"tag":38,"props":162,"children":163},{"style":45},[164],{"type":18,"value":53},{"type":13,"tag":38,"props":166,"children":167},{"style":125},[168],{"type":18,"value":169}," PipelineCacheHeaderVersionDataGraphQCOM",{"type":13,"tag":38,"props":171,"children":172},{"style":56},[173],{"type":18,"value":174}," {\n",{"type":13,"tag":38,"props":176,"children":177},{"class":40,"line":62},[178],{"type":13,"tag":38,"props":179,"children":180},{"style":66},[181],{"type":18,"value":182}," /// The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout.\n",{"type":13,"tag":38,"props":184,"children":185},{"class":40,"line":72},[186,191,196,201],{"type":13,"tag":38,"props":187,"children":188},{"style":56},[189],{"type":18,"value":190}," header_size",{"type":13,"tag":38,"props":192,"children":193},{"style":45},[194],{"type":18,"value":195},":",{"type":13,"tag":38,"props":197,"children":198},{"style":125},[199],{"type":18,"value":200}," u32",{"type":13,"tag":38,"props":202,"children":203},{"style":56},[204],{"type":18,"value":205},",\n",{"type":13,"tag":38,"props":207,"children":208},{"class":40,"line":86},[209,214,218,223,228,233],{"type":13,"tag":38,"props":210,"children":211},{"style":56},[212],{"type":18,"value":213}," header_version",{"type":13,"tag":38,"props":215,"children":216},{"style":45},[217],{"type":18,"value":195},{"type":13,"tag":38,"props":219,"children":220},{"style":125},[221],{"type":18,"value":222}," vk",{"type":13,"tag":38,"props":224,"children":225},{"style":45},[226],{"type":18,"value":227},"::",{"type":13,"tag":38,"props":229,"children":230},{"style":125},[231],{"type":18,"value":232},"PipelineCacheHeaderVersion",{"type":13,"tag":38,"props":234,"children":235},{"style":56},[236],{"type":18,"value":205},{"type":13,"tag":38,"props":238,"children":239},{"class":40,"line":95},[240,245,249,253,257,262],{"type":13,"tag":38,"props":241,"children":242},{"style":56},[243],{"type":18,"value":244}," cache_type",{"type":13,"tag":38,"props":246,"children":247},{"style":45},[248],{"type":18,"value":195},{"type":13,"tag":38,"props":250,"children":251},{"style":125},[252],{"type":18,"value":222},{"type":13,"tag":38,"props":254,"children":255},{"style":45},[256],{"type":18,"value":227},{"type":13,"tag":38,"props":258,"children":259},{"style":125},[260],{"type":18,"value":261},"DataGraphModelCacheTypeQCOM",{"type":13,"tag":38,"props":263,"children":264},{"style":56},[265],{"type":18,"value":205},{"type":13,"tag":38,"props":267,"children":268},{"class":40,"line":104},[269,274,278,282],{"type":13,"tag":38,"props":270,"children":271},{"style":56},[272],{"type":18,"value":273}," cache_version",{"type":13,"tag":38,"props":275,"children":276},{"style":45},[277],{"type":18,"value":195},{"type":13,"tag":38,"props":279,"children":280},{"style":125},[281],{"type":18,"value":200},{"type":13,"tag":38,"props":283,"children":284},{"style":56},[285],{"type":18,"value":205},{"type":13,"tag":38,"props":287,"children":288},{"class":40,"line":117},[289,294,298,303,308,313,319],{"type":13,"tag":38,"props":290,"children":291},{"style":56},[292],{"type":18,"value":293}," toolchain_version",{"type":13,"tag":38,"props":295,"children":296},{"style":45},[297],{"type":18,"value":195},{"type":13,"tag":38,"props":299,"children":300},{"style":56},[301],{"type":18,"value":302}," [",{"type":13,"tag":38,"props":304,"children":305},{"style":125},[306],{"type":18,"value":307},"u32",{"type":13,"tag":38,"props":309,"children":310},{"style":56},[311],{"type":18,"value":312},"; ",{"type":13,"tag":38,"props":314,"children":316},{"style":315},"--shiki-default:#0550AE;--shiki-dark:#79C0FF",[317],{"type":18,"value":318},"VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM",{"type":13,"tag":38,"props":320,"children":321},{"style":56},[322],{"type":18,"value":323},"],\n",{"type":13,"tag":38,"props":325,"children":326},{"class":40,"line":136},[327],{"type":13,"tag":38,"props":328,"children":329},{"style":56},[330],{"type":18,"value":331},"}\n",{"type":13,"tag":333,"props":334,"children":335},"ul",{},[336,348,388,407,418],{"type":13,"tag":337,"props":338,"children":339},"li",{},[340,346],{"type":13,"tag":34,"props":341,"children":343},{"className":342},[],[344],{"type":18,"value":345},"headerSize",{"type":18,"value":347}," is the length in bytes of the pipeline cache header.",{"type":13,"tag":337,"props":349,"children":350},{},[351,357,359,366,368,373,375,380,382,386],{"type":13,"tag":34,"props":352,"children":354},{"className":353},[],[355],{"type":18,"value":356},"headerVersion",{"type":18,"value":358}," is a ",{"type":13,"tag":360,"props":361,"children":363},"a",{"href":362},"/man/VkPipelineCacheHeaderVersion",[364],{"type":18,"value":365},"VkPipelineCacheHeaderVersion",{"type":18,"value":367}," value\nspecifying the version of the header.\nA consumer of the pipeline cache ",{"type":13,"tag":369,"props":370,"children":372},"normative",{"type":371},"should",[],{"type":18,"value":374}," use the cache version to\ninterpret the remainder of the cache header.\n",{"type":13,"tag":34,"props":376,"children":378},{"className":377},[],[379],{"type":18,"value":356},{"type":18,"value":381}," ",{"type":13,"tag":369,"props":383,"children":385},{"type":384},"must",[],{"type":18,"value":387}," be written as exactly 4 bytes.",{"type":13,"tag":337,"props":389,"children":390},{},[391,397,399,405],{"type":13,"tag":34,"props":392,"children":394},{"className":393},[],[395],{"type":18,"value":396},"cacheType",{"type":18,"value":398}," is the ",{"type":13,"tag":360,"props":400,"children":402},{"href":401},"/man/VkDataGraphModelCacheTypeQCOM",[403],{"type":18,"value":404},"VkDataGraphModelCacheTypeQCOM",{"type":18,"value":406}," type of data\ngraph cache encoded in the data.",{"type":13,"tag":337,"props":408,"children":409},{},[410,416],{"type":13,"tag":34,"props":411,"children":413},{"className":412},[],[414],{"type":18,"value":415},"cacheVersion",{"type":18,"value":417}," is the version of the encoding of the data graph\ncache.",{"type":13,"tag":337,"props":419,"children":420},{},[421,427],{"type":13,"tag":34,"props":422,"children":424},{"className":423},[],[425],{"type":18,"value":426},"toolchainVersion",{"type":18,"value":428}," is a null-terminated UTF-8 string specifying the\nversion of the compiler that built the data graph cache.",{"type":13,"tag":14,"props":430,"children":431},{},[432,434,437,439,445,447,451,453,459,461,467],{"type":18,"value":433},"The application ",{"type":13,"tag":369,"props":435,"children":436},{"type":371},[],{"type":18,"value":438}," verify that the header info is compatible with the\n",{"type":13,"tag":360,"props":440,"children":442},{"href":441},"/man/VkDataGraphProcessingEngineCreateInfoARM",[443],{"type":18,"value":444},"VkDataGraphProcessingEngineCreateInfoARM",{"type":18,"value":446}," passed during pipeline\ncreation.\nImplementations ",{"type":13,"tag":369,"props":448,"children":450},{"type":449},"may",[],{"type":18,"value":452}," return ",{"type":13,"tag":34,"props":454,"children":456},{"className":455},[],[457],{"type":18,"value":458},"VK_PIPELINE_COMPILE_REQUIRED_EXT",{"type":18,"value":460}," from\n",{"type":13,"tag":360,"props":462,"children":464},{"href":463},"/man/vkCreateDataGraphPipelinesARM",[465],{"type":18,"value":466},"vkCreateDataGraphPipelinesARM",{"type":18,"value":468}," if the cache is not compatible.",{"type":13,"tag":470,"props":471,"children":472},"note",{},[473],{"type":13,"tag":14,"props":474,"children":475},{},[476],{"type":18,"value":477},"This cache type is built using offline compilation, therefore Vulkan does\nnot define engine compatibility.\nThe application should refer to the offline compiler used to create the\ncache for guidance on compatibility.",{"type":13,"tag":14,"props":479,"children":480},{},[481],{"type":18,"value":482},"Unlike most structures declared by the Vulkan API, all fields of this\nstructure are written with the least significant byte first, regardless of\nhost byte-order.",{"type":13,"tag":14,"props":484,"children":485},{},[486,488,491],{"type":18,"value":487},"The C language specification does not define the packing of structure\nmembers.\nThis layout assumes tight structure member packing, with members laid out in\nthe order listed in the structure, and the intended size of the structure is\n28 bytes.\nIf a compiler produces code that diverges from that pattern, applications\n",{"type":13,"tag":369,"props":489,"children":490},{"type":384},[],{"type":18,"value":492}," employ another method to set values at the correct offsets.",{"type":13,"tag":494,"props":495,"children":497},"validity-group",{"name":496},"Valid Usage",[498,521,539,563],{"type":13,"tag":499,"props":500,"children":502},"validity-field",{"name":501},"VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-None-11835",[503],{"type":13,"tag":14,"props":504,"children":505},{},[506,508,514,516,519],{"type":18,"value":507},"The ",{"type":13,"tag":360,"props":509,"children":511},{"href":510},"/man/VkPhysicalDeviceDataGraphModelFeaturesQCOM#features-dataGraphModelQCOM",[512],{"type":18,"value":513},"dataGraphModel",{"type":18,"value":515}," feature ",{"type":13,"tag":369,"props":517,"children":518},{"type":384},[],{"type":18,"value":520}," be\nenabled",{"type":13,"tag":499,"props":522,"children":524},{"name":523},"VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-headerSize-11836",[525],{"type":13,"tag":14,"props":526,"children":527},{},[528,533,534,537],{"type":13,"tag":34,"props":529,"children":531},{"className":530},[],[532],{"type":18,"value":345},{"type":18,"value":381},{"type":13,"tag":369,"props":535,"children":536},{"type":384},[],{"type":18,"value":538}," be 28",{"type":13,"tag":499,"props":540,"children":542},{"name":541},"VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-headerVersion-11837",[543],{"type":13,"tag":14,"props":544,"children":545},{},[546,551,552,555,557],{"type":13,"tag":34,"props":547,"children":549},{"className":548},[],[550],{"type":18,"value":356},{"type":18,"value":381},{"type":13,"tag":369,"props":553,"children":554},{"type":384},[],{"type":18,"value":556}," be\n",{"type":13,"tag":34,"props":558,"children":560},{"className":559},[],[561],{"type":18,"value":562},"VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM",{"type":13,"tag":499,"props":564,"children":566},{"name":565},"VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-headerSize-11838",[567],{"type":13,"tag":14,"props":568,"children":569},{},[570,575,576,579],{"type":13,"tag":34,"props":571,"children":573},{"className":572},[],[574],{"type":18,"value":345},{"type":18,"value":381},{"type":13,"tag":369,"props":577,"children":578},{"type":384},[],{"type":18,"value":580}," not exceed the size of the pipeline cache",{"type":13,"tag":494,"props":582,"children":584},{"name":583},"Valid Usage (Implicit)",[585,609],{"type":13,"tag":499,"props":586,"children":588},{"name":587},"VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-headerVersion-parameter",[589],{"type":13,"tag":14,"props":590,"children":591},{},[592,597,598,601,603,607],{"type":13,"tag":34,"props":593,"children":595},{"className":594},[],[596],{"type":18,"value":356},{"type":18,"value":381},{"type":13,"tag":369,"props":599,"children":600},{"type":384},[],{"type":18,"value":602}," be a valid ",{"type":13,"tag":360,"props":604,"children":605},{"href":362},[606],{"type":18,"value":365},{"type":18,"value":608}," value",{"type":13,"tag":499,"props":610,"children":612},{"name":611},"VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-cacheType-parameter",[613],{"type":13,"tag":14,"props":614,"children":615},{},[616,621,622,625,626,630],{"type":13,"tag":34,"props":617,"children":619},{"className":618},[],[620],{"type":18,"value":396},{"type":18,"value":381},{"type":13,"tag":369,"props":623,"children":624},{"type":384},[],{"type":18,"value":602},{"type":13,"tag":360,"props":627,"children":628},{"href":401},[629],{"type":18,"value":404},{"type":18,"value":608},{"type":13,"tag":632,"props":633,"children":634},"style",{},[635],{"type":18,"value":636},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":31,"searchDepth":62,"depth":62,"links":638},[],"markdown",1773121605079]