[{"data":1,"prerenderedAt":770},["ShallowReactive",2],{"XiPLsOPuRU":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":769,"_id":4},"vkGetPipelineCacheData","Get the data store from a pipeline cache","VK_VERSION_1_0","protos",[],{"type":10,"children":11,"toc":767},"root",[12,27,333,396,496,538,555,579,603,761],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,25],{"type":18,"value":19},"text","Data ",{"type":13,"tag":21,"props":22,"children":24},"normative",{"type":23},"can",[],{"type":18,"value":26}," be retrieved from a pipeline cache object using the command:",{"type":13,"tag":28,"props":29,"children":30},"code-group",{},[31,142],{"type":13,"tag":32,"props":33,"children":39},"pre",{"className":34,"code":35,"filename":36,"language":37,"meta":38,"style":38},"language-c shiki shiki-themes github-light-default github-dark-default","VkResult vkGetPipelineCacheData(\n VkDevice device,\n VkPipelineCache pipelineCache,\n size_t* pDataSize,\n void* pData);\n","C","c","",[40],{"type":13,"tag":41,"props":42,"children":43},"code",{"__ignoreMap":38},[44,66,86,104,123],{"type":13,"tag":45,"props":46,"children":49},"span",{"class":47,"line":48},"line",1,[50,56,61],{"type":13,"tag":45,"props":51,"children":53},{"style":52},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[54],{"type":18,"value":55},"VkResult ",{"type":13,"tag":45,"props":57,"children":59},{"style":58},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[60],{"type":18,"value":4},{"type":13,"tag":45,"props":62,"children":63},{"style":52},[64],{"type":18,"value":65},"(\n",{"type":13,"tag":45,"props":67,"children":69},{"class":47,"line":68},2,[70,75,81],{"type":13,"tag":45,"props":71,"children":72},{"style":52},[73],{"type":18,"value":74}," VkDevice ",{"type":13,"tag":45,"props":76,"children":78},{"style":77},"--shiki-default:#953800;--shiki-dark:#FFA657",[79],{"type":18,"value":80},"device",{"type":13,"tag":45,"props":82,"children":83},{"style":52},[84],{"type":18,"value":85},",\n",{"type":13,"tag":45,"props":87,"children":89},{"class":47,"line":88},3,[90,95,100],{"type":13,"tag":45,"props":91,"children":92},{"style":52},[93],{"type":18,"value":94}," VkPipelineCache ",{"type":13,"tag":45,"props":96,"children":97},{"style":77},[98],{"type":18,"value":99},"pipelineCache",{"type":13,"tag":45,"props":101,"children":102},{"style":52},[103],{"type":18,"value":85},{"type":13,"tag":45,"props":105,"children":107},{"class":47,"line":106},4,[108,114,119],{"type":13,"tag":45,"props":109,"children":111},{"style":110},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[112],{"type":18,"value":113}," size_t*",{"type":13,"tag":45,"props":115,"children":116},{"style":77},[117],{"type":18,"value":118}," pDataSize",{"type":13,"tag":45,"props":120,"children":121},{"style":52},[122],{"type":18,"value":85},{"type":13,"tag":45,"props":124,"children":126},{"class":47,"line":125},5,[127,132,137],{"type":13,"tag":45,"props":128,"children":129},{"style":110},[130],{"type":18,"value":131}," void*",{"type":13,"tag":45,"props":133,"children":134},{"style":77},[135],{"type":18,"value":136}," pData",{"type":13,"tag":45,"props":138,"children":139},{"style":52},[140],{"type":18,"value":141},");\n",{"type":13,"tag":32,"props":143,"children":148},{"className":144,"code":145,"filename":146,"language":147,"meta":38,"style":38},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn get_pipeline_cache_data(\n device: crate :: vk :: vk::Device,\n pipeline_cache: vk::PipelineCache,\n p_data_size: *mut usize,\n p_data: *mut c_void,\n) -> vk::Result;\n","Rust","rs",[149],{"type":13,"tag":41,"props":150,"children":151},{"__ignoreMap":38},[152,174,225,254,280,301],{"type":13,"tag":45,"props":153,"children":154},{"class":47,"line":48},[155,160,165,170],{"type":13,"tag":45,"props":156,"children":157},{"style":110},[158],{"type":18,"value":159},"pub",{"type":13,"tag":45,"props":161,"children":162},{"style":110},[163],{"type":18,"value":164}," fn",{"type":13,"tag":45,"props":166,"children":167},{"style":58},[168],{"type":18,"value":169}," get_pipeline_cache_data",{"type":13,"tag":45,"props":171,"children":172},{"style":52},[173],{"type":18,"value":65},{"type":13,"tag":45,"props":175,"children":176},{"class":47,"line":68},[177,182,187,192,197,202,207,212,216,221],{"type":13,"tag":45,"props":178,"children":179},{"style":52},[180],{"type":18,"value":181}," device",{"type":13,"tag":45,"props":183,"children":184},{"style":110},[185],{"type":18,"value":186},":",{"type":13,"tag":45,"props":188,"children":189},{"style":110},[190],{"type":18,"value":191}," crate",{"type":13,"tag":45,"props":193,"children":194},{"style":110},[195],{"type":18,"value":196}," ::",{"type":13,"tag":45,"props":198,"children":199},{"style":52},[200],{"type":18,"value":201}," vk ",{"type":13,"tag":45,"props":203,"children":204},{"style":110},[205],{"type":18,"value":206},"::",{"type":13,"tag":45,"props":208,"children":209},{"style":77},[210],{"type":18,"value":211}," vk",{"type":13,"tag":45,"props":213,"children":214},{"style":110},[215],{"type":18,"value":206},{"type":13,"tag":45,"props":217,"children":218},{"style":77},[219],{"type":18,"value":220},"Device",{"type":13,"tag":45,"props":222,"children":223},{"style":52},[224],{"type":18,"value":85},{"type":13,"tag":45,"props":226,"children":227},{"class":47,"line":88},[228,233,237,241,245,250],{"type":13,"tag":45,"props":229,"children":230},{"style":52},[231],{"type":18,"value":232}," pipeline_cache",{"type":13,"tag":45,"props":234,"children":235},{"style":110},[236],{"type":18,"value":186},{"type":13,"tag":45,"props":238,"children":239},{"style":77},[240],{"type":18,"value":211},{"type":13,"tag":45,"props":242,"children":243},{"style":110},[244],{"type":18,"value":206},{"type":13,"tag":45,"props":246,"children":247},{"style":77},[248],{"type":18,"value":249},"PipelineCache",{"type":13,"tag":45,"props":251,"children":252},{"style":52},[253],{"type":18,"value":85},{"type":13,"tag":45,"props":255,"children":256},{"class":47,"line":106},[257,262,266,271,276],{"type":13,"tag":45,"props":258,"children":259},{"style":52},[260],{"type":18,"value":261}," p_data_size",{"type":13,"tag":45,"props":263,"children":264},{"style":110},[265],{"type":18,"value":186},{"type":13,"tag":45,"props":267,"children":268},{"style":110},[269],{"type":18,"value":270}," *mut",{"type":13,"tag":45,"props":272,"children":273},{"style":77},[274],{"type":18,"value":275}," usize",{"type":13,"tag":45,"props":277,"children":278},{"style":52},[279],{"type":18,"value":85},{"type":13,"tag":45,"props":281,"children":282},{"class":47,"line":125},[283,288,292,296],{"type":13,"tag":45,"props":284,"children":285},{"style":52},[286],{"type":18,"value":287}," p_data",{"type":13,"tag":45,"props":289,"children":290},{"style":110},[291],{"type":18,"value":186},{"type":13,"tag":45,"props":293,"children":294},{"style":110},[295],{"type":18,"value":270},{"type":13,"tag":45,"props":297,"children":298},{"style":52},[299],{"type":18,"value":300}," c_void,\n",{"type":13,"tag":45,"props":302,"children":304},{"class":47,"line":303},6,[305,310,315,319,323,328],{"type":13,"tag":45,"props":306,"children":307},{"style":52},[308],{"type":18,"value":309},") ",{"type":13,"tag":45,"props":311,"children":312},{"style":110},[313],{"type":18,"value":314},"->",{"type":13,"tag":45,"props":316,"children":317},{"style":77},[318],{"type":18,"value":211},{"type":13,"tag":45,"props":320,"children":321},{"style":110},[322],{"type":18,"value":206},{"type":13,"tag":45,"props":324,"children":325},{"style":77},[326],{"type":18,"value":327},"Result",{"type":13,"tag":45,"props":329,"children":330},{"style":52},[331],{"type":18,"value":332},";\n",{"type":13,"tag":334,"props":335,"children":336},"ul",{},[337,348,358,377],{"type":13,"tag":338,"props":339,"children":340},"li",{},[341,346],{"type":13,"tag":41,"props":342,"children":344},{"className":343},[],[345],{"type":18,"value":80},{"type":18,"value":347}," is the logical device that owns the pipeline cache.",{"type":13,"tag":338,"props":349,"children":350},{},[351,356],{"type":13,"tag":41,"props":352,"children":354},{"className":353},[],[355],{"type":18,"value":99},{"type":18,"value":357}," is the pipeline cache to retrieve data from.",{"type":13,"tag":338,"props":359,"children":360},{},[361,367,369,375],{"type":13,"tag":41,"props":362,"children":364},{"className":363},[],[365],{"type":18,"value":366},"pDataSize",{"type":18,"value":368}," is a pointer to a ",{"type":13,"tag":41,"props":370,"children":372},{"className":371},[],[373],{"type":18,"value":374},"size_t",{"type":18,"value":376}," value related to the\namount of data in the pipeline cache, as described below.",{"type":13,"tag":338,"props":378,"children":379},{},[380,386,388,394],{"type":13,"tag":41,"props":381,"children":383},{"className":382},[],[384],{"type":18,"value":385},"pData",{"type":18,"value":387}," is either ",{"type":13,"tag":41,"props":389,"children":391},{"className":390},[],[392],{"type":18,"value":393},"NULL",{"type":18,"value":395}," or a pointer to a buffer.",{"type":13,"tag":14,"props":397,"children":398},{},[399,401,406,408,413,415,418,420,425,427,432,434,438,440,445,447,452,454,459,461,464,466,471,473,478,480,486,488,494],{"type":18,"value":400},"If ",{"type":13,"tag":41,"props":402,"children":404},{"className":403},[],[405],{"type":18,"value":385},{"type":18,"value":407}," is ",{"type":13,"tag":41,"props":409,"children":411},{"className":410},[],[412],{"type":18,"value":393},{"type":18,"value":414},", then the maximum size of the data that ",{"type":13,"tag":21,"props":416,"children":417},{"type":23},[],{"type":18,"value":419}," be\nretrieved from the pipeline cache, in bytes, is returned in ",{"type":13,"tag":41,"props":421,"children":423},{"className":422},[],[424],{"type":18,"value":366},{"type":18,"value":426},".\nOtherwise, ",{"type":13,"tag":41,"props":428,"children":430},{"className":429},[],[431],{"type":18,"value":366},{"type":18,"value":433}," ",{"type":13,"tag":21,"props":435,"children":437},{"type":436},"must",[],{"type":18,"value":439}," point to a variable set by the application\nto the size of the buffer, in bytes, pointed to by ",{"type":13,"tag":41,"props":441,"children":443},{"className":442},[],[444],{"type":18,"value":385},{"type":18,"value":446},", and on\nreturn the variable is overwritten with the amount of data actually written\nto ",{"type":13,"tag":41,"props":448,"children":450},{"className":449},[],[451],{"type":18,"value":385},{"type":18,"value":453},".\nIf ",{"type":13,"tag":41,"props":455,"children":457},{"className":456},[],[458],{"type":18,"value":366},{"type":18,"value":460}," is less than the maximum size that ",{"type":13,"tag":21,"props":462,"children":463},{"type":23},[],{"type":18,"value":465}," be retrieved by\nthe pipeline cache, at most ",{"type":13,"tag":41,"props":467,"children":469},{"className":468},[],[470],{"type":18,"value":366},{"type":18,"value":472}," bytes will be written to\n",{"type":13,"tag":41,"props":474,"children":476},{"className":475},[],[477],{"type":18,"value":385},{"type":18,"value":479},", and ",{"type":13,"tag":41,"props":481,"children":483},{"className":482},[],[484],{"type":18,"value":485},"VK_INCOMPLETE",{"type":18,"value":487}," will be returned instead of\n",{"type":13,"tag":41,"props":489,"children":491},{"className":490},[],[492],{"type":18,"value":493},"VK_SUCCESS",{"type":18,"value":495},", to indicate that not all of the pipeline cache was\nreturned.",{"type":13,"tag":14,"props":497,"children":498},{},[499,501,506,508,511,513,519,521,528,530,536],{"type":18,"value":500},"Any data written to ",{"type":13,"tag":41,"props":502,"children":504},{"className":503},[],[505],{"type":18,"value":385},{"type":18,"value":507}," is valid and ",{"type":13,"tag":21,"props":509,"children":510},{"type":23},[],{"type":18,"value":512}," be provided as the\n",{"type":13,"tag":41,"props":514,"children":516},{"className":515},[],[517],{"type":18,"value":518},"pInitialData",{"type":18,"value":520}," member of the ",{"type":13,"tag":522,"props":523,"children":525},"a",{"href":524},"/man/VkPipelineCacheCreateInfo",[526],{"type":18,"value":527},"VkPipelineCacheCreateInfo",{"type":18,"value":529}," structure\npassed to ",{"type":13,"tag":41,"props":531,"children":533},{"className":532},[],[534],{"type":18,"value":535},"vkCreatePipelineCache",{"type":18,"value":537},".",{"type":13,"tag":14,"props":539,"children":540},{},[541,543,548,550,553],{"type":18,"value":542},"Two calls to ",{"type":13,"tag":41,"props":544,"children":546},{"className":545},[],[547],{"type":18,"value":4},{"type":18,"value":549}," with the same parameters ",{"type":13,"tag":21,"props":551,"children":552},{"type":436},[],{"type":18,"value":554},"\nretrieve the same data unless a command that modifies the contents of the\ncache is called between them.",{"type":13,"tag":14,"props":556,"children":557},{},[558,560,565,566,569,571,577],{"type":18,"value":559},"The initial bytes written to ",{"type":13,"tag":41,"props":561,"children":563},{"className":562},[],[564],{"type":18,"value":385},{"type":18,"value":433},{"type":13,"tag":21,"props":567,"children":568},{"type":436},[],{"type":18,"value":570}," be a header as described in\nthe ",{"type":13,"tag":522,"props":572,"children":574},{"href":573},"/chapters/pipelines#pipelines-cache-header",[575],{"type":18,"value":576},"Pipeline Cache Header",{"type":18,"value":578}," section.",{"type":13,"tag":14,"props":580,"children":581},{},[582,583,588,590,595,597,602],{"type":18,"value":400},{"type":13,"tag":41,"props":584,"children":586},{"className":585},[],[587],{"type":18,"value":366},{"type":18,"value":589}," is less than what is necessary to store this header,\nnothing will be written to ",{"type":13,"tag":41,"props":591,"children":593},{"className":592},[],[594],{"type":18,"value":385},{"type":18,"value":596}," and zero will be written to\n",{"type":13,"tag":41,"props":598,"children":600},{"className":599},[],[601],{"type":18,"value":366},{"type":18,"value":537},{"type":13,"tag":604,"props":605,"children":607},"validity-group",{"name":606},"Valid Usage (Implicit)",[608,635,659,684,738],{"type":13,"tag":609,"props":610,"children":612},"validity-field",{"name":611},"VUID-vkGetPipelineCacheData-device-parameter",[613],{"type":13,"tag":14,"props":614,"children":615},{},[616,621,622,625,627,633],{"type":13,"tag":41,"props":617,"children":619},{"className":618},[],[620],{"type":18,"value":80},{"type":18,"value":433},{"type":13,"tag":21,"props":623,"children":624},{"type":436},[],{"type":18,"value":626}," be a valid ",{"type":13,"tag":522,"props":628,"children":630},{"href":629},"/man/VkDevice",[631],{"type":18,"value":632},"VkDevice",{"type":18,"value":634}," handle",{"type":13,"tag":609,"props":636,"children":638},{"name":637},"VUID-vkGetPipelineCacheData-pipelineCache-parameter",[639],{"type":13,"tag":14,"props":640,"children":641},{},[642,647,648,651,652,658],{"type":13,"tag":41,"props":643,"children":645},{"className":644},[],[646],{"type":18,"value":99},{"type":18,"value":433},{"type":13,"tag":21,"props":649,"children":650},{"type":436},[],{"type":18,"value":626},{"type":13,"tag":522,"props":653,"children":655},{"href":654},"/man/VkPipelineCache",[656],{"type":18,"value":657},"VkPipelineCache",{"type":18,"value":634},{"type":13,"tag":609,"props":660,"children":662},{"name":661},"VUID-vkGetPipelineCacheData-pDataSize-parameter",[663],{"type":13,"tag":14,"props":664,"children":665},{},[666,671,672,675,677,682],{"type":13,"tag":41,"props":667,"children":669},{"className":668},[],[670],{"type":18,"value":366},{"type":18,"value":433},{"type":13,"tag":21,"props":673,"children":674},{"type":436},[],{"type":18,"value":676}," be a valid pointer to a ",{"type":13,"tag":41,"props":678,"children":680},{"className":679},[],[681],{"type":18,"value":374},{"type":18,"value":683}," value",{"type":13,"tag":609,"props":685,"children":687},{"name":686},"VUID-vkGetPipelineCacheData-pData-parameter",[688],{"type":13,"tag":14,"props":689,"children":690},{},[691,693,698,700,706,707,712,713,718,720,725,726,729,731,736],{"type":18,"value":692},"If the value referenced by ",{"type":13,"tag":41,"props":694,"children":696},{"className":695},[],[697],{"type":18,"value":366},{"type":18,"value":699}," is not ",{"type":13,"tag":41,"props":701,"children":703},{"className":702},[],[704],{"type":18,"value":705},"0",{"type":18,"value":479},{"type":13,"tag":41,"props":708,"children":710},{"className":709},[],[711],{"type":18,"value":385},{"type":18,"value":699},{"type":13,"tag":41,"props":714,"children":716},{"className":715},[],[717],{"type":18,"value":393},{"type":18,"value":719},", ",{"type":13,"tag":41,"props":721,"children":723},{"className":722},[],[724],{"type":18,"value":385},{"type":18,"value":433},{"type":13,"tag":21,"props":727,"children":728},{"type":436},[],{"type":18,"value":730}," be a valid pointer to an array of ",{"type":13,"tag":41,"props":732,"children":734},{"className":733},[],[735],{"type":18,"value":366},{"type":18,"value":737}," bytes",{"type":13,"tag":609,"props":739,"children":741},{"name":740},"VUID-vkGetPipelineCacheData-pipelineCache-parent",[742],{"type":13,"tag":14,"props":743,"children":744},{},[745,750,751,754,756],{"type":13,"tag":41,"props":746,"children":748},{"className":747},[],[749],{"type":18,"value":99},{"type":18,"value":433},{"type":13,"tag":21,"props":752,"children":753},{"type":436},[],{"type":18,"value":755}," have been created, allocated, or retrieved from ",{"type":13,"tag":41,"props":757,"children":759},{"className":758},[],[760],{"type":18,"value":80},{"type":13,"tag":762,"props":763,"children":764},"style",{},[765],{"type":18,"value":766},"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":38,"searchDepth":68,"depth":68,"links":768},[],"markdown",1729612518055]