[{"data":1,"prerenderedAt":605},["ShallowReactive",2],{"$fw-AUeovd8OErWOMo9wPlkxUhXkCAwiDhhQEWB5z9RQU":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":604,"_id":4},"VkCopyMemoryIndirectCommandKHR","Structure specifying indirect memory region copy operation","VK_KHR_copy_memory_indirect","structs",[],{"type":10,"children":11,"toc":602},"root",[12,28,234,299,337,543,596],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,26],{"type":18,"value":19},"text","The structure describing source and destination memory regions,\n",{"type":13,"tag":21,"props":22,"children":24},"code",{"className":23},[],[25],{"type":18,"value":4},{"type":18,"value":27}," is defined as:",{"type":13,"tag":29,"props":30,"children":31},"code-group",{},[32,103],{"type":13,"tag":33,"props":34,"children":40},"pre",{"className":35,"code":36,"filename":37,"language":38,"meta":39,"style":39},"language-c shiki shiki-themes github-light-default github-dark-default","typedef struct VkCopyMemoryIndirectCommandKHR {\n VkDeviceAddress srcAddress;\n VkDeviceAddress dstAddress;\n VkDeviceSize size;\n} VkCopyMemoryIndirectCommandKHR;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,76,85,94],{"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:#CF222E;--shiki-dark:#FF7B72",[54],{"type":18,"value":55},"typedef",{"type":13,"tag":45,"props":57,"children":58},{"style":52},[59],{"type":18,"value":60}," struct",{"type":13,"tag":45,"props":62,"children":64},{"style":63},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[65],{"type":18,"value":66}," VkCopyMemoryIndirectCommandKHR {\n",{"type":13,"tag":45,"props":68,"children":70},{"class":47,"line":69},2,[71],{"type":13,"tag":45,"props":72,"children":73},{"style":63},[74],{"type":18,"value":75}," VkDeviceAddress srcAddress;\n",{"type":13,"tag":45,"props":77,"children":79},{"class":47,"line":78},3,[80],{"type":13,"tag":45,"props":81,"children":82},{"style":63},[83],{"type":18,"value":84}," VkDeviceAddress dstAddress;\n",{"type":13,"tag":45,"props":86,"children":88},{"class":47,"line":87},4,[89],{"type":13,"tag":45,"props":90,"children":91},{"style":63},[92],{"type":18,"value":93}," VkDeviceSize size;\n",{"type":13,"tag":45,"props":95,"children":97},{"class":47,"line":96},5,[98],{"type":13,"tag":45,"props":99,"children":100},{"style":63},[101],{"type":18,"value":102},"} VkCopyMemoryIndirectCommandKHR;\n",{"type":13,"tag":33,"props":104,"children":109},{"className":105,"code":106,"filename":107,"language":108,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct CopyMemoryIndirectCommandKHR {\n src_address: vk::DeviceAddress,\n dst_address: vk::DeviceAddress,\n size: vk::DeviceSize,\n}\n","Rust","rs",[110],{"type":13,"tag":21,"props":111,"children":112},{"__ignoreMap":39},[113,136,169,197,226],{"type":13,"tag":45,"props":114,"children":115},{"class":47,"line":48},[116,121,125,131],{"type":13,"tag":45,"props":117,"children":118},{"style":52},[119],{"type":18,"value":120},"pub",{"type":13,"tag":45,"props":122,"children":123},{"style":52},[124],{"type":18,"value":60},{"type":13,"tag":45,"props":126,"children":128},{"style":127},"--shiki-default:#953800;--shiki-dark:#FFA657",[129],{"type":18,"value":130}," CopyMemoryIndirectCommandKHR",{"type":13,"tag":45,"props":132,"children":133},{"style":63},[134],{"type":18,"value":135}," {\n",{"type":13,"tag":45,"props":137,"children":138},{"class":47,"line":69},[139,144,149,154,159,164],{"type":13,"tag":45,"props":140,"children":141},{"style":63},[142],{"type":18,"value":143}," src_address",{"type":13,"tag":45,"props":145,"children":146},{"style":52},[147],{"type":18,"value":148},":",{"type":13,"tag":45,"props":150,"children":151},{"style":127},[152],{"type":18,"value":153}," vk",{"type":13,"tag":45,"props":155,"children":156},{"style":52},[157],{"type":18,"value":158},"::",{"type":13,"tag":45,"props":160,"children":161},{"style":127},[162],{"type":18,"value":163},"DeviceAddress",{"type":13,"tag":45,"props":165,"children":166},{"style":63},[167],{"type":18,"value":168},",\n",{"type":13,"tag":45,"props":170,"children":171},{"class":47,"line":78},[172,177,181,185,189,193],{"type":13,"tag":45,"props":173,"children":174},{"style":63},[175],{"type":18,"value":176}," dst_address",{"type":13,"tag":45,"props":178,"children":179},{"style":52},[180],{"type":18,"value":148},{"type":13,"tag":45,"props":182,"children":183},{"style":127},[184],{"type":18,"value":153},{"type":13,"tag":45,"props":186,"children":187},{"style":52},[188],{"type":18,"value":158},{"type":13,"tag":45,"props":190,"children":191},{"style":127},[192],{"type":18,"value":163},{"type":13,"tag":45,"props":194,"children":195},{"style":63},[196],{"type":18,"value":168},{"type":13,"tag":45,"props":198,"children":199},{"class":47,"line":87},[200,205,209,213,217,222],{"type":13,"tag":45,"props":201,"children":202},{"style":63},[203],{"type":18,"value":204}," size",{"type":13,"tag":45,"props":206,"children":207},{"style":52},[208],{"type":18,"value":148},{"type":13,"tag":45,"props":210,"children":211},{"style":127},[212],{"type":18,"value":153},{"type":13,"tag":45,"props":214,"children":215},{"style":52},[216],{"type":18,"value":158},{"type":13,"tag":45,"props":218,"children":219},{"style":127},[220],{"type":18,"value":221},"DeviceSize",{"type":13,"tag":45,"props":223,"children":224},{"style":63},[225],{"type":18,"value":168},{"type":13,"tag":45,"props":227,"children":228},{"class":47,"line":96},[229],{"type":13,"tag":45,"props":230,"children":231},{"style":63},[232],{"type":18,"value":233},"}\n",{"type":13,"tag":29,"props":235,"children":236},{},[237,256],{"type":13,"tag":33,"props":238,"children":240},{"className":35,"code":239,"filename":37,"language":38,"meta":39,"style":39},"typedef VkCopyMemoryIndirectCommandKHR VkCopyMemoryIndirectCommandNV;\n",[241],{"type":13,"tag":21,"props":242,"children":243},{"__ignoreMap":39},[244],{"type":13,"tag":45,"props":245,"children":246},{"class":47,"line":48},[247,251],{"type":13,"tag":45,"props":248,"children":249},{"style":52},[250],{"type":18,"value":55},{"type":13,"tag":45,"props":252,"children":253},{"style":63},[254],{"type":18,"value":255}," VkCopyMemoryIndirectCommandKHR VkCopyMemoryIndirectCommandNV;\n",{"type":13,"tag":33,"props":257,"children":259},{"className":105,"code":258,"filename":107,"language":108,"meta":39,"style":39},"type CopyMemoryIndirectCommandNV = vk::CopyMemoryIndirectCommandKHR;\n",[260],{"type":13,"tag":21,"props":261,"children":262},{"__ignoreMap":39},[263],{"type":13,"tag":45,"props":264,"children":265},{"class":47,"line":48},[266,271,276,281,285,289,294],{"type":13,"tag":45,"props":267,"children":268},{"style":52},[269],{"type":18,"value":270},"type",{"type":13,"tag":45,"props":272,"children":273},{"style":127},[274],{"type":18,"value":275}," CopyMemoryIndirectCommandNV",{"type":13,"tag":45,"props":277,"children":278},{"style":52},[279],{"type":18,"value":280}," =",{"type":13,"tag":45,"props":282,"children":283},{"style":127},[284],{"type":18,"value":153},{"type":13,"tag":45,"props":286,"children":287},{"style":52},[288],{"type":18,"value":158},{"type":13,"tag":45,"props":290,"children":291},{"style":127},[292],{"type":18,"value":293},"CopyMemoryIndirectCommandKHR",{"type":13,"tag":45,"props":295,"children":296},{"style":63},[297],{"type":18,"value":298},";\n",{"type":13,"tag":300,"props":301,"children":302},"ul",{},[303,315,326],{"type":13,"tag":304,"props":305,"children":306},"li",{},[307,313],{"type":13,"tag":21,"props":308,"children":310},{"className":309},[],[311],{"type":18,"value":312},"srcAddress",{"type":18,"value":314}," is the starting address of the source device memory to\ncopy from.",{"type":13,"tag":304,"props":316,"children":317},{},[318,324],{"type":13,"tag":21,"props":319,"children":321},{"className":320},[],[322],{"type":18,"value":323},"dstAddress",{"type":18,"value":325}," is the starting address of the destination device\nmemory to copy to.",{"type":13,"tag":304,"props":327,"children":328},{},[329,335],{"type":13,"tag":21,"props":330,"children":332},{"className":331},[],[333],{"type":18,"value":334},"size",{"type":18,"value":336}," is the size of the copy in bytes.",{"type":13,"tag":338,"props":339,"children":341},"validity-group",{"name":340},"Valid Usage",[342,366,384,402,442,477,512],{"type":13,"tag":343,"props":344,"children":346},"validity-field",{"name":345},"VUID-VkCopyMemoryIndirectCommandKHR-srcAddress-10958",[347],{"type":13,"tag":14,"props":348,"children":349},{},[350,352,357,359,364],{"type":18,"value":351},"The ",{"type":13,"tag":21,"props":353,"children":355},{"className":354},[],[356],{"type":18,"value":312},{"type":18,"value":358}," ",{"type":13,"tag":360,"props":361,"children":363},"normative",{"type":362},"must",[],{"type":18,"value":365}," be 4 byte aligned",{"type":13,"tag":343,"props":367,"children":369},{"name":368},"VUID-VkCopyMemoryIndirectCommandKHR-dstAddress-10959",[370],{"type":13,"tag":14,"props":371,"children":372},{},[373,374,379,380,383],{"type":18,"value":351},{"type":13,"tag":21,"props":375,"children":377},{"className":376},[],[378],{"type":18,"value":323},{"type":18,"value":358},{"type":13,"tag":360,"props":381,"children":382},{"type":362},[],{"type":18,"value":365},{"type":13,"tag":343,"props":385,"children":387},{"name":386},"VUID-VkCopyMemoryIndirectCommandKHR-size-10960",[388],{"type":13,"tag":14,"props":389,"children":390},{},[391,392,397,398,401],{"type":18,"value":351},{"type":13,"tag":21,"props":393,"children":395},{"className":394},[],[396],{"type":18,"value":334},{"type":18,"value":358},{"type":13,"tag":360,"props":399,"children":400},{"type":362},[],{"type":18,"value":365},{"type":13,"tag":343,"props":403,"children":405},{"name":404},"VUID-VkCopyMemoryIndirectCommandKHR-srcAddress-10961",[406],{"type":13,"tag":14,"props":407,"children":408},{},[409,411,416,418,423,425,430,432,435,437],{"type":18,"value":410},"The memory in range [",{"type":13,"tag":21,"props":412,"children":414},{"className":413},[],[415],{"type":18,"value":312},{"type":18,"value":417},", ",{"type":13,"tag":21,"props":419,"children":421},{"className":420},[],[422],{"type":18,"value":312},{"type":18,"value":424}," +\n",{"type":13,"tag":21,"props":426,"children":428},{"className":427},[],[429],{"type":18,"value":334},{"type":18,"value":431}," - 1] ",{"type":13,"tag":360,"props":433,"children":434},{"type":362},[],{"type":18,"value":436}," be within the bounds of the memory allocation\nbacking ",{"type":13,"tag":21,"props":438,"children":440},{"className":439},[],[441],{"type":18,"value":312},{"type":13,"tag":343,"props":443,"children":445},{"name":444},"VUID-VkCopyMemoryIndirectCommandKHR-dstAddress-10962",[446],{"type":13,"tag":14,"props":447,"children":448},{},[449,450,455,456,461,462,467,468,471,472],{"type":18,"value":410},{"type":13,"tag":21,"props":451,"children":453},{"className":452},[],[454],{"type":18,"value":323},{"type":18,"value":417},{"type":13,"tag":21,"props":457,"children":459},{"className":458},[],[460],{"type":18,"value":323},{"type":18,"value":424},{"type":13,"tag":21,"props":463,"children":465},{"className":464},[],[466],{"type":18,"value":334},{"type":18,"value":431},{"type":13,"tag":360,"props":469,"children":470},{"type":362},[],{"type":18,"value":436},{"type":13,"tag":21,"props":473,"children":475},{"className":474},[],[476],{"type":18,"value":323},{"type":13,"tag":343,"props":478,"children":480},{"name":479},"VUID-VkCopyMemoryIndirectCommandKHR-srcAddress-12211",[481],{"type":13,"tag":14,"props":482,"children":483},{},[484,486,491,493,498,499,502,504,510],{"type":18,"value":485},"The range of memory defined by ",{"type":13,"tag":21,"props":487,"children":489},{"className":488},[],[490],{"type":18,"value":312},{"type":18,"value":492}," and ",{"type":13,"tag":21,"props":494,"children":496},{"className":495},[],[497],{"type":18,"value":334},{"type":18,"value":358},{"type":13,"tag":360,"props":500,"children":501},{"type":362},[],{"type":18,"value":503}," be\na device address range allocated to the application from a buffer\ncreated with the ",{"type":13,"tag":21,"props":505,"children":507},{"className":506},[],[508],{"type":18,"value":509},"VK_BUFFER_USAGE_TRANSFER_SRC_BIT",{"type":18,"value":511}," usage flag set",{"type":13,"tag":343,"props":513,"children":515},{"name":514},"VUID-VkCopyMemoryIndirectCommandKHR-dstAddress-12212",[516],{"type":13,"tag":14,"props":517,"children":518},{},[519,520,525,526,531,532,535,536,542],{"type":18,"value":485},{"type":13,"tag":21,"props":521,"children":523},{"className":522},[],[524],{"type":18,"value":323},{"type":18,"value":492},{"type":13,"tag":21,"props":527,"children":529},{"className":528},[],[530],{"type":18,"value":334},{"type":18,"value":358},{"type":13,"tag":360,"props":533,"children":534},{"type":362},[],{"type":18,"value":503},{"type":13,"tag":21,"props":537,"children":539},{"className":538},[],[540],{"type":18,"value":541},"VK_BUFFER_USAGE_TRANSFER_DST_BIT",{"type":18,"value":511},{"type":13,"tag":338,"props":544,"children":546},{"name":545},"Valid Usage (Implicit)",[547,574],{"type":13,"tag":343,"props":548,"children":550},{"name":549},"VUID-VkCopyMemoryIndirectCommandKHR-srcAddress-parameter",[551],{"type":13,"tag":14,"props":552,"children":553},{},[554,559,560,563,565,572],{"type":13,"tag":21,"props":555,"children":557},{"className":556},[],[558],{"type":18,"value":312},{"type":18,"value":358},{"type":13,"tag":360,"props":561,"children":562},{"type":362},[],{"type":18,"value":564}," be a valid ",{"type":13,"tag":566,"props":567,"children":569},"a",{"href":568},"/man/VkDeviceAddress",[570],{"type":18,"value":571},"VkDeviceAddress",{"type":18,"value":573}," value",{"type":13,"tag":343,"props":575,"children":577},{"name":576},"VUID-VkCopyMemoryIndirectCommandKHR-dstAddress-parameter",[578],{"type":13,"tag":14,"props":579,"children":580},{},[581,586,587,590,591,595],{"type":13,"tag":21,"props":582,"children":584},{"className":583},[],[585],{"type":18,"value":323},{"type":18,"value":358},{"type":13,"tag":360,"props":588,"children":589},{"type":362},[],{"type":18,"value":564},{"type":13,"tag":566,"props":592,"children":593},{"href":568},[594],{"type":18,"value":571},{"type":18,"value":573},{"type":13,"tag":597,"props":598,"children":599},"style",{},[600],{"type":18,"value":601},"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":39,"searchDepth":69,"depth":69,"links":603},[],"markdown",1773054743749]