1e5c31af7Sopenharmony_ci<!DOCTYPE html> 2e5c31af7Sopenharmony_ci<html lang="en"> 3e5c31af7Sopenharmony_ci<head> 4e5c31af7Sopenharmony_ci<meta charset="UTF-8"> 5e5c31af7Sopenharmony_ci<meta http-equiv="X-UA-Compatible" content="IE=edge"> 6e5c31af7Sopenharmony_ci<meta name="viewport" content="width=device-width, initial-scale=1.0"> 7e5c31af7Sopenharmony_ci<meta name="generator" content="Asciidoctor 2.0.17"> 8e5c31af7Sopenharmony_ci<meta name="author" content="The Khronos® Vulkan Working Group"> 9e5c31af7Sopenharmony_ci<title>Test® 1.2.3 - (with all registered extensions)</title> 10e5c31af7Sopenharmony_ci<style> 11e5c31af7Sopenharmony_ci/*! normalize.css v2.1.2 | MIT License | git.io/normalize */ 12e5c31af7Sopenharmony_ci/* ========================================================================== HTML5 display definitions ========================================================================== */ 13e5c31af7Sopenharmony_ci/** Correct `block` display not defined in IE 8/9. */ 14e5c31af7Sopenharmony_ciarticle, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; } 15e5c31af7Sopenharmony_ci 16e5c31af7Sopenharmony_ci/** Correct `inline-block` display not defined in IE 8/9. */ 17e5c31af7Sopenharmony_ciaudio, canvas, video { display: inline-block; } 18e5c31af7Sopenharmony_ci 19e5c31af7Sopenharmony_ci/** Prevent modern browsers from displaying `audio` without controls. Remove excess height in iOS 5 devices. */ 20e5c31af7Sopenharmony_ciaudio:not([controls]) { display: none; height: 0; } 21e5c31af7Sopenharmony_ci 22e5c31af7Sopenharmony_ci/** Address `[hidden]` styling not present in IE 8/9. Hide the `template` element in IE, Safari, and Firefox < 22. */ 23e5c31af7Sopenharmony_ci[hidden], template { display: none; } 24e5c31af7Sopenharmony_ci 25e5c31af7Sopenharmony_ciscript { display: none !important; } 26e5c31af7Sopenharmony_ci 27e5c31af7Sopenharmony_ci/* ========================================================================== Base ========================================================================== */ 28e5c31af7Sopenharmony_ci/** 1. Set default font family to sans-serif. 2. Prevent iOS text size adjust after orientation change, without disabling user zoom. */ 29e5c31af7Sopenharmony_cihtml { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ } 30e5c31af7Sopenharmony_ci 31e5c31af7Sopenharmony_ci/** Remove default margin. */ 32e5c31af7Sopenharmony_cibody { margin: 0; } 33e5c31af7Sopenharmony_ci 34e5c31af7Sopenharmony_ci/* ========================================================================== Links ========================================================================== */ 35e5c31af7Sopenharmony_ci/** Remove the gray background color from active links in IE 10. */ 36e5c31af7Sopenharmony_cia { background: transparent; } 37e5c31af7Sopenharmony_ci 38e5c31af7Sopenharmony_ci/** Address `outline` inconsistency between Chrome and other browsers. */ 39e5c31af7Sopenharmony_cia:focus { outline: thin dotted; } 40e5c31af7Sopenharmony_ci 41e5c31af7Sopenharmony_ci/** Improve readability when focused and also mouse hovered in all browsers. */ 42e5c31af7Sopenharmony_cia:active, a:hover { outline: 0; } 43e5c31af7Sopenharmony_ci 44e5c31af7Sopenharmony_ci/* ========================================================================== Typography ========================================================================== */ 45e5c31af7Sopenharmony_ci/** Address variable `h1` font-size and margin within `section` and `article` contexts in Firefox 4+, Safari 5, and Chrome. */ 46e5c31af7Sopenharmony_cih1 { font-size: 2em; margin: 0.67em 0; } 47e5c31af7Sopenharmony_ci 48e5c31af7Sopenharmony_ci/** Address styling not present in IE 8/9, Safari 5, and Chrome. */ 49e5c31af7Sopenharmony_ciabbr[title] { border-bottom: 1px dotted; } 50e5c31af7Sopenharmony_ci 51e5c31af7Sopenharmony_ci/** Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome. */ 52e5c31af7Sopenharmony_cib, strong { font-weight: bold; } 53e5c31af7Sopenharmony_ci 54e5c31af7Sopenharmony_ci/** Address styling not present in Safari 5 and Chrome. */ 55e5c31af7Sopenharmony_cidfn { font-style: italic; } 56e5c31af7Sopenharmony_ci 57e5c31af7Sopenharmony_ci/** Address differences between Firefox and other browsers. */ 58e5c31af7Sopenharmony_cihr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; } 59e5c31af7Sopenharmony_ci 60e5c31af7Sopenharmony_ci/** Address styling not present in IE 8/9. */ 61e5c31af7Sopenharmony_cimark { background: #ff0; color: #000; } 62e5c31af7Sopenharmony_ci 63e5c31af7Sopenharmony_ci/** Correct font family set oddly in Safari 5 and Chrome. */ 64e5c31af7Sopenharmony_cicode, kbd, pre, samp { font-family: monospace, serif; font-size: 1em; } 65e5c31af7Sopenharmony_ci 66e5c31af7Sopenharmony_ci/** Improve readability of pre-formatted text in all browsers. */ 67e5c31af7Sopenharmony_cipre { white-space: pre-wrap; } 68e5c31af7Sopenharmony_ci 69e5c31af7Sopenharmony_ci/** Set consistent quote types. */ 70e5c31af7Sopenharmony_ciq { quotes: "\201C" "\201D" "\2018" "\2019"; } 71e5c31af7Sopenharmony_ci 72e5c31af7Sopenharmony_ci/** Address inconsistent and variable font size in all browsers. */ 73e5c31af7Sopenharmony_cismall { font-size: 80%; } 74e5c31af7Sopenharmony_ci 75e5c31af7Sopenharmony_ci/** Prevent `sub` and `sup` affecting `line-height` in all browsers. */ 76e5c31af7Sopenharmony_cisub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } 77e5c31af7Sopenharmony_ci 78e5c31af7Sopenharmony_cisup { top: -0.5em; } 79e5c31af7Sopenharmony_ci 80e5c31af7Sopenharmony_cisub { bottom: -0.25em; } 81e5c31af7Sopenharmony_ci 82e5c31af7Sopenharmony_ci/* ========================================================================== Embedded content ========================================================================== */ 83e5c31af7Sopenharmony_ci/** Remove border when inside `a` element in IE 8/9. */ 84e5c31af7Sopenharmony_ciimg { border: 0; } 85e5c31af7Sopenharmony_ci 86e5c31af7Sopenharmony_ci/** Correct overflow displayed oddly in IE 9. */ 87e5c31af7Sopenharmony_cisvg:not(:root) { overflow: hidden; } 88e5c31af7Sopenharmony_ci 89e5c31af7Sopenharmony_ci/* ========================================================================== Figures ========================================================================== */ 90e5c31af7Sopenharmony_ci/** Address margin not present in IE 8/9 and Safari 5. */ 91e5c31af7Sopenharmony_cifigure { margin: 0; } 92e5c31af7Sopenharmony_ci 93e5c31af7Sopenharmony_ci/* ========================================================================== Forms ========================================================================== */ 94e5c31af7Sopenharmony_ci/** Define consistent border, margin, and padding. */ 95e5c31af7Sopenharmony_cifieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; } 96e5c31af7Sopenharmony_ci 97e5c31af7Sopenharmony_ci/** 1. Correct `color` not being inherited in IE 8/9. 2. Remove padding so people aren't caught out if they zero out fieldsets. */ 98e5c31af7Sopenharmony_cilegend { border: 0; /* 1 */ padding: 0; /* 2 */ } 99e5c31af7Sopenharmony_ci 100e5c31af7Sopenharmony_ci/** 1. Correct font family not being inherited in all browsers. 2. Correct font size not being inherited in all browsers. 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome. */ 101e5c31af7Sopenharmony_cibutton, input, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 2 */ margin: 0; /* 3 */ } 102e5c31af7Sopenharmony_ci 103e5c31af7Sopenharmony_ci/** Address Firefox 4+ setting `line-height` on `input` using `!important` in the UA stylesheet. */ 104e5c31af7Sopenharmony_cibutton, input { line-height: normal; } 105e5c31af7Sopenharmony_ci 106e5c31af7Sopenharmony_ci/** Address inconsistent `text-transform` inheritance for `button` and `select`. All other form control elements do not inherit `text-transform` values. Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+. Correct `select` style inheritance in Firefox 4+ and Opera. */ 107e5c31af7Sopenharmony_cibutton, select { text-transform: none; } 108e5c31af7Sopenharmony_ci 109e5c31af7Sopenharmony_ci/** 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls. 2. Correct inability to style clickable `input` types in iOS. 3. Improve usability and consistency of cursor style between image-type `input` and others. */ 110e5c31af7Sopenharmony_cibutton, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ } 111e5c31af7Sopenharmony_ci 112e5c31af7Sopenharmony_ci/** Re-set default cursor for disabled elements. */ 113e5c31af7Sopenharmony_cibutton[disabled], html input[disabled] { cursor: default; } 114e5c31af7Sopenharmony_ci 115e5c31af7Sopenharmony_ci/** 1. Address box sizing set to `content-box` in IE 8/9. 2. Remove excess padding in IE 8/9. */ 116e5c31af7Sopenharmony_ciinput[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ } 117e5c31af7Sopenharmony_ci 118e5c31af7Sopenharmony_ci/** 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome (include `-moz` to future-proof). */ 119e5c31af7Sopenharmony_ciinput[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; } 120e5c31af7Sopenharmony_ci 121e5c31af7Sopenharmony_ci/** Remove inner padding and search cancel button in Safari 5 and Chrome on OS X. */ 122e5c31af7Sopenharmony_ciinput[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; } 123e5c31af7Sopenharmony_ci 124e5c31af7Sopenharmony_ci/** Remove inner padding and border in Firefox 4+. */ 125e5c31af7Sopenharmony_cibutton::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } 126e5c31af7Sopenharmony_ci 127e5c31af7Sopenharmony_ci/** 1. Remove default vertical scrollbar in IE 8/9. 2. Improve readability and alignment in all browsers. */ 128e5c31af7Sopenharmony_citextarea { overflow: auto; /* 1 */ vertical-align: top; /* 2 */ } 129e5c31af7Sopenharmony_ci 130e5c31af7Sopenharmony_ci/* ========================================================================== Tables ========================================================================== */ 131e5c31af7Sopenharmony_ci/** Remove most spacing between table cells. */ 132e5c31af7Sopenharmony_citable { border-collapse: collapse; border-spacing: 0; } 133e5c31af7Sopenharmony_ci 134e5c31af7Sopenharmony_cimeta.foundation-mq-small { font-family: "only screen and (min-width: 768px)"; width: 768px; } 135e5c31af7Sopenharmony_ci 136e5c31af7Sopenharmony_cimeta.foundation-mq-medium { font-family: "only screen and (min-width:1280px)"; width: 1280px; } 137e5c31af7Sopenharmony_ci 138e5c31af7Sopenharmony_cimeta.foundation-mq-large { font-family: "only screen and (min-width:1440px)"; width: 1440px; } 139e5c31af7Sopenharmony_ci 140e5c31af7Sopenharmony_ci*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } 141e5c31af7Sopenharmony_ci 142e5c31af7Sopenharmony_cihtml, body { font-size: 100%; } 143e5c31af7Sopenharmony_ci 144e5c31af7Sopenharmony_cibody { background: #fff; color: #222; padding: 0; margin: 0; font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; font-weight: normal; font-style: normal; line-height: 1; position: relative; cursor: auto; } 145e5c31af7Sopenharmony_ci 146e5c31af7Sopenharmony_cia:hover { cursor: pointer; } 147e5c31af7Sopenharmony_ci 148e5c31af7Sopenharmony_ciimg, object, embed { max-width: 100%; height: auto; } 149e5c31af7Sopenharmony_ci 150e5c31af7Sopenharmony_ciobject, embed { height: 100%; } 151e5c31af7Sopenharmony_ci 152e5c31af7Sopenharmony_ciimg { -ms-interpolation-mode: bicubic; } 153e5c31af7Sopenharmony_ci 154e5c31af7Sopenharmony_ci#map_canvas img, #map_canvas embed, #map_canvas object, .map_canvas img, .map_canvas embed, .map_canvas object { max-width: none !important; } 155e5c31af7Sopenharmony_ci 156e5c31af7Sopenharmony_ci.left { float: left !important; } 157e5c31af7Sopenharmony_ci 158e5c31af7Sopenharmony_ci.right { float: right !important; } 159e5c31af7Sopenharmony_ci 160e5c31af7Sopenharmony_ci.text-left { text-align: left !important; } 161e5c31af7Sopenharmony_ci 162e5c31af7Sopenharmony_ci.text-right { text-align: right !important; } 163e5c31af7Sopenharmony_ci 164e5c31af7Sopenharmony_ci.text-center { text-align: center !important; } 165e5c31af7Sopenharmony_ci 166e5c31af7Sopenharmony_ci.text-justify { text-align: justify !important; } 167e5c31af7Sopenharmony_ci 168e5c31af7Sopenharmony_ci.hide { display: none; } 169e5c31af7Sopenharmony_ci 170e5c31af7Sopenharmony_ci.antialiased { -webkit-font-smoothing: antialiased; } 171e5c31af7Sopenharmony_ci 172e5c31af7Sopenharmony_ciimg { display: inline-block; vertical-align: middle; } 173e5c31af7Sopenharmony_ci 174e5c31af7Sopenharmony_citextarea { height: auto; min-height: 50px; } 175e5c31af7Sopenharmony_ci 176e5c31af7Sopenharmony_ciselect { width: 100%; } 177e5c31af7Sopenharmony_ci 178e5c31af7Sopenharmony_ciobject, svg { display: inline-block; vertical-align: middle; } 179e5c31af7Sopenharmony_ci 180e5c31af7Sopenharmony_ci.center { margin-left: auto; margin-right: auto; } 181e5c31af7Sopenharmony_ci 182e5c31af7Sopenharmony_ci.spread { width: 100%; } 183e5c31af7Sopenharmony_ci 184e5c31af7Sopenharmony_cip.lead, .paragraph.lead > p, #preamble > .sectionbody > .paragraph:first-of-type p { font-size: 1.21875em; line-height: 1.6; } 185e5c31af7Sopenharmony_ci 186e5c31af7Sopenharmony_ci.subheader, .admonitionblock td.content > .title, .audioblock > .title, .exampleblock > .title, .imageblock > .title, .listingblock > .title, .literalblock > .title, .stemblock > .title, .openblock > .title, .paragraph > .title, .quoteblock > .title, table.tableblock > .title, .verseblock > .title, .videoblock > .title, .dlist > .title, .olist > .title, .ulist > .title, .qlist > .title, .hdlist > .title { line-height: 1.4; color: black; font-weight: 300; margin-top: 0.2em; margin-bottom: 0.5em; } 187e5c31af7Sopenharmony_ci 188e5c31af7Sopenharmony_ci/* Typography resets */ 189e5c31af7Sopenharmony_cidiv, dl, dt, dd, ul, ol, li, h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6, pre, form, p, blockquote, th, td { margin: 0; padding: 0; direction: ltr; } 190e5c31af7Sopenharmony_ci 191e5c31af7Sopenharmony_ci/* Default Link Styles */ 192e5c31af7Sopenharmony_cia { color: #0068b0; text-decoration: none; line-height: inherit; } 193e5c31af7Sopenharmony_cia:hover, a:focus { color: #333; } 194e5c31af7Sopenharmony_cia img { border: none; } 195e5c31af7Sopenharmony_ci 196e5c31af7Sopenharmony_ci/* Default paragraph styles */ 197e5c31af7Sopenharmony_cip { font-family: Noto, sans-serif; font-weight: normal; font-size: 1em; line-height: 1.6; margin-bottom: 0.75em; text-rendering: optimizeLegibility; } 198e5c31af7Sopenharmony_cip aside { font-size: 0.875em; line-height: 1.35; font-style: italic; } 199e5c31af7Sopenharmony_ci 200e5c31af7Sopenharmony_ci/* Default header styles */ 201e5c31af7Sopenharmony_cih1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 { font-family: Noto, sans-serif; font-weight: normal; font-style: normal; color: black; text-rendering: optimizeLegibility; margin-top: 0.5em; margin-bottom: 0.5em; line-height: 1.2125em; } 202e5c31af7Sopenharmony_cih1 small, h2 small, h3 small, #toctitle small, .sidebarblock > .content > .title small, h4 small, h5 small, h6 small { font-size: 60%; color: #4d4d4d; line-height: 0; } 203e5c31af7Sopenharmony_ci 204e5c31af7Sopenharmony_cih1 { font-size: 2.125em; } 205e5c31af7Sopenharmony_ci 206e5c31af7Sopenharmony_cih2 { font-size: 1.6875em; } 207e5c31af7Sopenharmony_ci 208e5c31af7Sopenharmony_cih3, #toctitle, .sidebarblock > .content > .title { font-size: 1.375em; } 209e5c31af7Sopenharmony_ci 210e5c31af7Sopenharmony_cih4 { font-size: 1.125em; } 211e5c31af7Sopenharmony_ci 212e5c31af7Sopenharmony_cih5 { font-size: 1.125em; } 213e5c31af7Sopenharmony_ci 214e5c31af7Sopenharmony_cih6 { font-size: 1em; } 215e5c31af7Sopenharmony_ci 216e5c31af7Sopenharmony_cihr { border: solid #ddd; border-width: 1px 0 0; clear: both; margin: 1.25em 0 1.1875em; height: 0; } 217e5c31af7Sopenharmony_ci 218e5c31af7Sopenharmony_ci/* Helpful Typography Defaults */ 219e5c31af7Sopenharmony_ciem, i { font-style: italic; line-height: inherit; } 220e5c31af7Sopenharmony_ci 221e5c31af7Sopenharmony_cistrong, b { font-weight: bold; line-height: inherit; } 222e5c31af7Sopenharmony_ci 223e5c31af7Sopenharmony_cismall { font-size: 60%; line-height: inherit; } 224e5c31af7Sopenharmony_ci 225e5c31af7Sopenharmony_cicode { font-family: Consolas, "Liberation Mono", Courier, monospace; font-weight: normal; color: #264357; } 226e5c31af7Sopenharmony_ci 227e5c31af7Sopenharmony_ci/* Lists */ 228e5c31af7Sopenharmony_ciul, ol, dl { font-size: 1em; line-height: 1.6; margin-bottom: 0.75em; list-style-position: outside; font-family: Noto, sans-serif; } 229e5c31af7Sopenharmony_ci 230e5c31af7Sopenharmony_ciul, ol { margin-left: 1.5em; } 231e5c31af7Sopenharmony_ciul.no-bullet, ol.no-bullet { margin-left: 1.5em; } 232e5c31af7Sopenharmony_ci 233e5c31af7Sopenharmony_ci/* Unordered Lists */ 234e5c31af7Sopenharmony_ciul li ul, ul li ol { margin-left: 1.25em; margin-bottom: 0; font-size: 1em; /* Override nested font-size change */ } 235e5c31af7Sopenharmony_ciul.square li ul, ul.circle li ul, ul.disc li ul { list-style: inherit; } 236e5c31af7Sopenharmony_ciul.square { list-style-type: square; } 237e5c31af7Sopenharmony_ciul.circle { list-style-type: circle; } 238e5c31af7Sopenharmony_ciul.disc { list-style-type: disc; } 239e5c31af7Sopenharmony_ciul.no-bullet { list-style: none; } 240e5c31af7Sopenharmony_ci 241e5c31af7Sopenharmony_ci/* Ordered Lists */ 242e5c31af7Sopenharmony_ciol li ul, ol li ol { margin-left: 1.25em; margin-bottom: 0; } 243e5c31af7Sopenharmony_ci 244e5c31af7Sopenharmony_ci/* Definition Lists */ 245e5c31af7Sopenharmony_cidl dt { margin-bottom: 0.3em; font-weight: bold; } 246e5c31af7Sopenharmony_cidl dd { margin-bottom: 0.75em; } 247e5c31af7Sopenharmony_ci 248e5c31af7Sopenharmony_ci/* Abbreviations */ 249e5c31af7Sopenharmony_ciabbr, acronym { text-transform: uppercase; font-size: 90%; color: black; border-bottom: 1px dotted #ddd; cursor: help; } 250e5c31af7Sopenharmony_ci 251e5c31af7Sopenharmony_ciabbr { text-transform: none; } 252e5c31af7Sopenharmony_ci 253e5c31af7Sopenharmony_ci/* Blockquotes */ 254e5c31af7Sopenharmony_ciblockquote { margin: 0 0 0.75em; padding: 0.5625em 1.25em 0 1.1875em; border-left: 1px solid #ddd; } 255e5c31af7Sopenharmony_ciblockquote cite { display: block; font-size: 0.8125em; color: #365E7A; } 256e5c31af7Sopenharmony_ciblockquote cite:before { content: "\2014 \0020"; } 257e5c31af7Sopenharmony_ciblockquote cite a, blockquote cite a:visited { color: #365E7A; } 258e5c31af7Sopenharmony_ci 259e5c31af7Sopenharmony_ciblockquote, blockquote p { line-height: 1.6; color: #333; } 260e5c31af7Sopenharmony_ci 261e5c31af7Sopenharmony_ci/* Microformats */ 262e5c31af7Sopenharmony_ci.vcard { display: inline-block; margin: 0 0 1.25em 0; border: 1px solid #ddd; padding: 0.625em 0.75em; } 263e5c31af7Sopenharmony_ci.vcard li { margin: 0; display: block; } 264e5c31af7Sopenharmony_ci.vcard .fn { font-weight: bold; font-size: 0.9375em; } 265e5c31af7Sopenharmony_ci 266e5c31af7Sopenharmony_ci.vevent .summary { font-weight: bold; } 267e5c31af7Sopenharmony_ci.vevent abbr { cursor: auto; text-decoration: none; font-weight: bold; border: none; padding: 0 0.0625em; } 268e5c31af7Sopenharmony_ci 269e5c31af7Sopenharmony_ci@media only screen and (min-width: 768px) { h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 { line-height: 1.4; } 270e5c31af7Sopenharmony_ci h1 { font-size: 2.75em; } 271e5c31af7Sopenharmony_ci h2 { font-size: 2.3125em; } 272e5c31af7Sopenharmony_ci h3, #toctitle, .sidebarblock > .content > .title { font-size: 1.6875em; } 273e5c31af7Sopenharmony_ci h4 { font-size: 1.4375em; } } 274e5c31af7Sopenharmony_ci/* Tables */ 275e5c31af7Sopenharmony_citable { background: #fff; margin-bottom: 1.25em; border: solid 1px #d8d8ce; } 276e5c31af7Sopenharmony_citable thead, table tfoot { background: #eee; font-weight: bold; } 277e5c31af7Sopenharmony_citable thead tr th, table thead tr td, table tfoot tr th, table tfoot tr td { padding: 0.5em 0.625em 0.625em; font-size: inherit; color: #222; text-align: left; } 278e5c31af7Sopenharmony_citable tr th, table tr td { padding: 0.5625em 0.625em; font-size: inherit; color: #6d6e71; } 279e5c31af7Sopenharmony_citable tr.even, table tr.alt, table tr:nth-of-type(even) { background: #f8f8f8; } 280e5c31af7Sopenharmony_citable thead tr th, table tfoot tr th, table tbody tr td, table tr td, table tfoot tr td { display: table-cell; line-height: 1.4; } 281e5c31af7Sopenharmony_ci 282e5c31af7Sopenharmony_cibody { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; tab-size: 4; } 283e5c31af7Sopenharmony_ci 284e5c31af7Sopenharmony_cih1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 { line-height: 1.4; } 285e5c31af7Sopenharmony_ci 286e5c31af7Sopenharmony_cia:hover, a:focus { text-decoration: underline; } 287e5c31af7Sopenharmony_ci 288e5c31af7Sopenharmony_ci.clearfix:before, .clearfix:after, .float-group:before, .float-group:after { content: " "; display: table; } 289e5c31af7Sopenharmony_ci.clearfix:after, .float-group:after { clear: both; } 290e5c31af7Sopenharmony_ci 291e5c31af7Sopenharmony_ci*:not(pre) > code { font-size: inherit; font-style: normal !important; letter-spacing: 0; padding: 0; background-color: transparent; -webkit-border-radius: 0; border-radius: 0; line-height: inherit; word-wrap: break-word; } 292e5c31af7Sopenharmony_ci*:not(pre) > code.nobreak { word-wrap: normal; } 293e5c31af7Sopenharmony_ci*:not(pre) > code.nowrap { white-space: nowrap; } 294e5c31af7Sopenharmony_ci 295e5c31af7Sopenharmony_cipre, pre > code { line-height: 1.6; color: #264357; font-family: Consolas, "Liberation Mono", Courier, monospace; font-weight: normal; } 296e5c31af7Sopenharmony_ci 297e5c31af7Sopenharmony_ciem em { font-style: normal; } 298e5c31af7Sopenharmony_ci 299e5c31af7Sopenharmony_cistrong strong { font-weight: normal; } 300e5c31af7Sopenharmony_ci 301e5c31af7Sopenharmony_ci.keyseq { color: #333333; } 302e5c31af7Sopenharmony_ci 303e5c31af7Sopenharmony_cikbd { font-family: Consolas, "Liberation Mono", Courier, monospace; display: inline-block; color: black; font-size: 0.65em; line-height: 1.45; background-color: #f7f7f7; border: 1px solid #ccc; -webkit-border-radius: 3px; border-radius: 3px; -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 0 0.1em white inset; -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 0 0.1em white inset; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 0 0.1em white inset; margin: 0 0.15em; padding: 0.2em 0.5em; vertical-align: middle; position: relative; top: -0.1em; white-space: nowrap; } 304e5c31af7Sopenharmony_ci 305e5c31af7Sopenharmony_ci.keyseq kbd:first-child { margin-left: 0; } 306e5c31af7Sopenharmony_ci 307e5c31af7Sopenharmony_ci.keyseq kbd:last-child { margin-right: 0; } 308e5c31af7Sopenharmony_ci 309e5c31af7Sopenharmony_ci.menuseq, .menuref { color: #000; } 310e5c31af7Sopenharmony_ci 311e5c31af7Sopenharmony_ci.menuseq b:not(.caret), .menuref { font-weight: inherit; } 312e5c31af7Sopenharmony_ci 313e5c31af7Sopenharmony_ci.menuseq { word-spacing: -0.02em; } 314e5c31af7Sopenharmony_ci.menuseq b.caret { font-size: 1.25em; line-height: 0.8; } 315e5c31af7Sopenharmony_ci.menuseq i.caret { font-weight: bold; text-align: center; width: 0.45em; } 316e5c31af7Sopenharmony_ci 317e5c31af7Sopenharmony_cib.button:before, b.button:after { position: relative; top: -1px; font-weight: normal; } 318e5c31af7Sopenharmony_ci 319e5c31af7Sopenharmony_cib.button:before { content: "["; padding: 0 3px 0 2px; } 320e5c31af7Sopenharmony_ci 321e5c31af7Sopenharmony_cib.button:after { content: "]"; padding: 0 2px 0 3px; } 322e5c31af7Sopenharmony_ci 323e5c31af7Sopenharmony_ci#header, #content, #footnotes, #footer { width: 100%; margin-left: auto; margin-right: auto; margin-top: 0; margin-bottom: 0; max-width: 62.5em; *zoom: 1; position: relative; padding-left: 1.5em; padding-right: 1.5em; } 324e5c31af7Sopenharmony_ci#header:before, #header:after, #content:before, #content:after, #footnotes:before, #footnotes:after, #footer:before, #footer:after { content: " "; display: table; } 325e5c31af7Sopenharmony_ci#header:after, #content:after, #footnotes:after, #footer:after { clear: both; } 326e5c31af7Sopenharmony_ci 327e5c31af7Sopenharmony_ci#content { margin-top: 1.25em; } 328e5c31af7Sopenharmony_ci 329e5c31af7Sopenharmony_ci#content:before { content: none; } 330e5c31af7Sopenharmony_ci 331e5c31af7Sopenharmony_ci#header > h1:first-child { color: black; margin-top: 2.25rem; margin-bottom: 0; } 332e5c31af7Sopenharmony_ci#header > h1:first-child + #toc { margin-top: 8px; border-top: 1px solid #ddd; } 333e5c31af7Sopenharmony_ci#header > h1:only-child, body.toc2 #header > h1:nth-last-child(2) { border-bottom: 1px solid #ddd; padding-bottom: 8px; } 334e5c31af7Sopenharmony_ci#header .details { border-bottom: 1px solid #ddd; line-height: 1.45; padding-top: 0.25em; padding-bottom: 0.25em; padding-left: 0.25em; color: #365E7A; display: -ms-flexbox; display: -webkit-flex; display: flex; -ms-flex-flow: row wrap; -webkit-flex-flow: row wrap; flex-flow: row wrap; } 335e5c31af7Sopenharmony_ci#header .details span:first-child { margin-left: -0.125em; } 336e5c31af7Sopenharmony_ci#header .details span.email a { color: #333; } 337e5c31af7Sopenharmony_ci#header .details br { display: none; } 338e5c31af7Sopenharmony_ci#header .details br + span:before { content: "\00a0\2013\00a0"; } 339e5c31af7Sopenharmony_ci#header .details br + span.author:before { content: "\00a0\22c5\00a0"; color: #333; } 340e5c31af7Sopenharmony_ci#header .details br + span#revremark:before { content: "\00a0|\00a0"; } 341e5c31af7Sopenharmony_ci#header #revnumber { text-transform: capitalize; } 342e5c31af7Sopenharmony_ci#header #revnumber:after { content: "\00a0"; } 343e5c31af7Sopenharmony_ci 344e5c31af7Sopenharmony_ci#content > h1:first-child:not([class]) { color: black; border-bottom: 1px solid #ddd; padding-bottom: 8px; margin-top: 0; padding-top: 1rem; margin-bottom: 1.25rem; } 345e5c31af7Sopenharmony_ci 346e5c31af7Sopenharmony_ci#toc { border-bottom: 0 solid #ddd; padding-bottom: 0.5em; } 347e5c31af7Sopenharmony_ci#toc > ul { margin-left: 0.125em; } 348e5c31af7Sopenharmony_ci#toc ul.sectlevel0 > li > a { font-style: italic; } 349e5c31af7Sopenharmony_ci#toc ul.sectlevel0 ul.sectlevel1 { margin: 0.5em 0; } 350e5c31af7Sopenharmony_ci#toc ul { font-family: Noto, sans-serif; list-style-type: none; } 351e5c31af7Sopenharmony_ci#toc li { line-height: 1.3334; margin-top: 0.3334em; } 352e5c31af7Sopenharmony_ci#toc a { text-decoration: none; } 353e5c31af7Sopenharmony_ci#toc a:active { text-decoration: underline; } 354e5c31af7Sopenharmony_ci 355e5c31af7Sopenharmony_ci#toctitle { color: black; font-size: 1.2em; } 356e5c31af7Sopenharmony_ci 357e5c31af7Sopenharmony_ci@media only screen and (min-width: 768px) { #toctitle { font-size: 1.375em; } 358e5c31af7Sopenharmony_ci body.toc2 { padding-left: 15em; padding-right: 0; } 359e5c31af7Sopenharmony_ci #toc.toc2 { margin-top: 0 !important; background-color: #fff; position: fixed; width: 15em; left: 0; top: 0; border-right: 1px solid #ddd; border-top-width: 0 !important; border-bottom-width: 0 !important; z-index: 1000; padding: 1.25em 1em; height: 100%; overflow: auto; } 360e5c31af7Sopenharmony_ci #toc.toc2 #toctitle { margin-top: 0; margin-bottom: 0.8rem; font-size: 1.2em; } 361e5c31af7Sopenharmony_ci #toc.toc2 > ul { font-size: 0.9em; margin-bottom: 0; } 362e5c31af7Sopenharmony_ci #toc.toc2 ul ul { margin-left: 0; padding-left: 1em; } 363e5c31af7Sopenharmony_ci #toc.toc2 ul.sectlevel0 ul.sectlevel1 { padding-left: 0; margin-top: 0.5em; margin-bottom: 0.5em; } 364e5c31af7Sopenharmony_ci body.toc2.toc-right { padding-left: 0; padding-right: 15em; } 365e5c31af7Sopenharmony_ci body.toc2.toc-right #toc.toc2 { border-right-width: 0; border-left: 1px solid #ddd; left: auto; right: 0; } } 366e5c31af7Sopenharmony_ci@media only screen and (min-width: 1280px) { body.toc2 { padding-left: 20em; padding-right: 0; } 367e5c31af7Sopenharmony_ci #toc.toc2 { width: 20em; } 368e5c31af7Sopenharmony_ci #toc.toc2 #toctitle { font-size: 1.375em; } 369e5c31af7Sopenharmony_ci #toc.toc2 > ul { font-size: 0.95em; } 370e5c31af7Sopenharmony_ci #toc.toc2 ul ul { padding-left: 1.25em; } 371e5c31af7Sopenharmony_ci body.toc2.toc-right { padding-left: 0; padding-right: 20em; } } 372e5c31af7Sopenharmony_ci#content #toc { border-style: solid; border-width: 1px; border-color: #e6e6e6; margin-bottom: 1.25em; padding: 1.25em; background: #fff; -webkit-border-radius: 0; border-radius: 0; } 373e5c31af7Sopenharmony_ci#content #toc > :first-child { margin-top: 0; } 374e5c31af7Sopenharmony_ci#content #toc > :last-child { margin-bottom: 0; } 375e5c31af7Sopenharmony_ci 376e5c31af7Sopenharmony_ci#footer { max-width: 100%; background-color: none; padding: 1.25em; } 377e5c31af7Sopenharmony_ci 378e5c31af7Sopenharmony_ci#footer-text { color: black; line-height: 1.44; } 379e5c31af7Sopenharmony_ci 380e5c31af7Sopenharmony_ci#content { margin-bottom: 0.625em; } 381e5c31af7Sopenharmony_ci 382e5c31af7Sopenharmony_ci.sect1 { padding-bottom: 0.625em; } 383e5c31af7Sopenharmony_ci 384e5c31af7Sopenharmony_ci@media only screen and (min-width: 768px) { #content { margin-bottom: 1.25em; } 385e5c31af7Sopenharmony_ci .sect1 { padding-bottom: 1.25em; } } 386e5c31af7Sopenharmony_ci.sect1:last-child { padding-bottom: 0; } 387e5c31af7Sopenharmony_ci 388e5c31af7Sopenharmony_ci.sect1 + .sect1 { border-top: 0 solid #ddd; } 389e5c31af7Sopenharmony_ci 390e5c31af7Sopenharmony_ci#content h1 > a.anchor, h2 > a.anchor, h3 > a.anchor, #toctitle > a.anchor, .sidebarblock > .content > .title > a.anchor, h4 > a.anchor, h5 > a.anchor, h6 > a.anchor { position: absolute; z-index: 1001; width: 1.5ex; margin-left: -1.5ex; display: block; text-decoration: none !important; visibility: hidden; text-align: center; font-weight: normal; } 391e5c31af7Sopenharmony_ci#content h1 > a.anchor:before, h2 > a.anchor:before, h3 > a.anchor:before, #toctitle > a.anchor:before, .sidebarblock > .content > .title > a.anchor:before, h4 > a.anchor:before, h5 > a.anchor:before, h6 > a.anchor:before { content: "\00A7"; font-size: 0.85em; display: block; padding-top: 0.1em; } 392e5c31af7Sopenharmony_ci#content h1:hover > a.anchor, #content h1 > a.anchor:hover, h2:hover > a.anchor, h2 > a.anchor:hover, h3:hover > a.anchor, #toctitle:hover > a.anchor, .sidebarblock > .content > .title:hover > a.anchor, h3 > a.anchor:hover, #toctitle > a.anchor:hover, .sidebarblock > .content > .title > a.anchor:hover, h4:hover > a.anchor, h4 > a.anchor:hover, h5:hover > a.anchor, h5 > a.anchor:hover, h6:hover > a.anchor, h6 > a.anchor:hover { visibility: visible; } 393e5c31af7Sopenharmony_ci#content h1 > a.link, h2 > a.link, h3 > a.link, #toctitle > a.link, .sidebarblock > .content > .title > a.link, h4 > a.link, h5 > a.link, h6 > a.link { color: black; text-decoration: none; } 394e5c31af7Sopenharmony_ci#content h1 > a.link:hover, h2 > a.link:hover, h3 > a.link:hover, #toctitle > a.link:hover, .sidebarblock > .content > .title > a.link:hover, h4 > a.link:hover, h5 > a.link:hover, h6 > a.link:hover { color: black; } 395e5c31af7Sopenharmony_ci 396e5c31af7Sopenharmony_ci.audioblock, .imageblock, .literalblock, .listingblock, .stemblock, .videoblock { margin-bottom: 1.25em; } 397e5c31af7Sopenharmony_ci 398e5c31af7Sopenharmony_ci.admonitionblock td.content > .title, .audioblock > .title, .exampleblock > .title, .imageblock > .title, .listingblock > .title, .literalblock > .title, .stemblock > .title, .openblock > .title, .paragraph > .title, .quoteblock > .title, table.tableblock > .title, .verseblock > .title, .videoblock > .title, .dlist > .title, .olist > .title, .ulist > .title, .qlist > .title, .hdlist > .title { text-rendering: optimizeLegibility; text-align: left; } 399e5c31af7Sopenharmony_ci 400e5c31af7Sopenharmony_citable.tableblock > caption.title { white-space: nowrap; overflow: visible; max-width: 0; } 401e5c31af7Sopenharmony_ci 402e5c31af7Sopenharmony_ci.paragraph.lead > p, #preamble > .sectionbody > .paragraph:first-of-type p { color: black; } 403e5c31af7Sopenharmony_ci 404e5c31af7Sopenharmony_citable.tableblock #preamble > .sectionbody > .paragraph:first-of-type p { font-size: inherit; } 405e5c31af7Sopenharmony_ci 406e5c31af7Sopenharmony_ci.admonitionblock > table { border-collapse: separate; border: 0; background: none; width: 100%; } 407e5c31af7Sopenharmony_ci.admonitionblock > table td.icon { text-align: center; width: 80px; } 408e5c31af7Sopenharmony_ci.admonitionblock > table td.icon img { max-width: initial; } 409e5c31af7Sopenharmony_ci.admonitionblock > table td.icon .title { font-weight: bold; font-family: Noto, sans-serif; text-transform: uppercase; } 410e5c31af7Sopenharmony_ci.admonitionblock > table td.content { padding-left: 1.125em; padding-right: 1.25em; border-left: 1px solid #ddd; color: #365E7A; } 411e5c31af7Sopenharmony_ci.admonitionblock > table td.content > :last-child > :last-child { margin-bottom: 0; } 412e5c31af7Sopenharmony_ci 413e5c31af7Sopenharmony_ci.exampleblock > .content { border-style: solid; border-width: 1px; border-color: #e6e6e6; margin-bottom: 1.25em; padding: 1.25em; background: #fff; -webkit-border-radius: 0; border-radius: 0; } 414e5c31af7Sopenharmony_ci.exampleblock > .content > :first-child { margin-top: 0; } 415e5c31af7Sopenharmony_ci.exampleblock > .content > :last-child { margin-bottom: 0; } 416e5c31af7Sopenharmony_ci 417e5c31af7Sopenharmony_ci.sidebarblock { border-style: solid; border-width: 1px; border-color: #e6e6e6; margin-bottom: 1.25em; padding: 1.25em; background: #fff; -webkit-border-radius: 0; border-radius: 0; } 418e5c31af7Sopenharmony_ci.sidebarblock > :first-child { margin-top: 0; } 419e5c31af7Sopenharmony_ci.sidebarblock > :last-child { margin-bottom: 0; } 420e5c31af7Sopenharmony_ci.sidebarblock > .content > .title { color: black; margin-top: 0; } 421e5c31af7Sopenharmony_ci 422e5c31af7Sopenharmony_ci.exampleblock > .content > :last-child > :last-child, .exampleblock > .content .olist > ol > li:last-child > :last-child, .exampleblock > .content .ulist > ul > li:last-child > :last-child, .exampleblock > .content .qlist > ol > li:last-child > :last-child, .sidebarblock > .content > :last-child > :last-child, .sidebarblock > .content .olist > ol > li:last-child > :last-child, .sidebarblock > .content .ulist > ul > li:last-child > :last-child, .sidebarblock > .content .qlist > ol > li:last-child > :last-child { margin-bottom: 0; } 423e5c31af7Sopenharmony_ci 424e5c31af7Sopenharmony_ci.literalblock pre, .listingblock pre:not(.highlight), .listingblock pre[class="highlight"], .listingblock pre[class^="highlight "], .listingblock pre.CodeRay, .listingblock pre.prettyprint { background: #eee; } 425e5c31af7Sopenharmony_ci.sidebarblock .literalblock pre, .sidebarblock .listingblock pre:not(.highlight), .sidebarblock .listingblock pre[class="highlight"], .sidebarblock .listingblock pre[class^="highlight "], .sidebarblock .listingblock pre.CodeRay, .sidebarblock .listingblock pre.prettyprint { background: #f2f1f1; } 426e5c31af7Sopenharmony_ci 427e5c31af7Sopenharmony_ci.literalblock pre, .literalblock pre[class], .listingblock pre, .listingblock pre[class] { border: 1px hidden #666; -webkit-border-radius: 0; border-radius: 0; word-wrap: break-word; padding: 1.25em 1.5625em 1.125em 1.5625em; font-size: 0.8125em; } 428e5c31af7Sopenharmony_ci.literalblock pre.nowrap, .literalblock pre[class].nowrap, .listingblock pre.nowrap, .listingblock pre[class].nowrap { overflow-x: auto; white-space: pre; word-wrap: normal; } 429e5c31af7Sopenharmony_ci@media only screen and (min-width: 768px) { .literalblock pre, .literalblock pre[class], .listingblock pre, .listingblock pre[class] { font-size: 0.90625em; } } 430e5c31af7Sopenharmony_ci@media only screen and (min-width: 1280px) { .literalblock pre, .literalblock pre[class], .listingblock pre, .listingblock pre[class] { font-size: 1em; } } 431e5c31af7Sopenharmony_ci 432e5c31af7Sopenharmony_ci.literalblock.output pre { color: #eee; background-color: #264357; } 433e5c31af7Sopenharmony_ci 434e5c31af7Sopenharmony_ci.listingblock pre.highlightjs { padding: 0; } 435e5c31af7Sopenharmony_ci.listingblock pre.highlightjs > code { padding: 1.25em 1.5625em 1.125em 1.5625em; -webkit-border-radius: 0; border-radius: 0; } 436e5c31af7Sopenharmony_ci 437e5c31af7Sopenharmony_ci.listingblock > .content { position: relative; } 438e5c31af7Sopenharmony_ci 439e5c31af7Sopenharmony_ci.listingblock code[data-lang]:before { display: none; content: attr(data-lang); position: absolute; font-size: 0.75em; top: 0.425rem; right: 0.5rem; line-height: 1; text-transform: uppercase; color: #999; } 440e5c31af7Sopenharmony_ci 441e5c31af7Sopenharmony_ci.listingblock:hover code[data-lang]:before { display: block; } 442e5c31af7Sopenharmony_ci 443e5c31af7Sopenharmony_ci.listingblock.terminal pre .command:before { content: attr(data-prompt); padding-right: 0.5em; color: #999; } 444e5c31af7Sopenharmony_ci 445e5c31af7Sopenharmony_ci.listingblock.terminal pre .command:not([data-prompt]):before { content: "$"; } 446e5c31af7Sopenharmony_ci 447e5c31af7Sopenharmony_citable.pyhltable { border-collapse: separate; border: 0; margin-bottom: 0; background: none; } 448e5c31af7Sopenharmony_ci 449e5c31af7Sopenharmony_citable.pyhltable td { vertical-align: top; padding-top: 0; padding-bottom: 0; line-height: 1.6; } 450e5c31af7Sopenharmony_ci 451e5c31af7Sopenharmony_citable.pyhltable td.code { padding-left: .75em; padding-right: 0; } 452e5c31af7Sopenharmony_ci 453e5c31af7Sopenharmony_cipre.pygments .lineno, table.pyhltable td:not(.code) { color: #999; padding-left: 0; padding-right: .5em; border-right: 1px solid #ddd; } 454e5c31af7Sopenharmony_ci 455e5c31af7Sopenharmony_cipre.pygments .lineno { display: inline-block; margin-right: .25em; } 456e5c31af7Sopenharmony_ci 457e5c31af7Sopenharmony_citable.pyhltable .linenodiv { background: none !important; padding-right: 0 !important; } 458e5c31af7Sopenharmony_ci 459e5c31af7Sopenharmony_ci.quoteblock { margin: 0 1em 0.75em 1.5em; display: table; } 460e5c31af7Sopenharmony_ci.quoteblock > .title { margin-left: -1.5em; margin-bottom: 0.75em; } 461e5c31af7Sopenharmony_ci.quoteblock blockquote, .quoteblock blockquote p { color: #333; font-size: 1.15rem; line-height: 1.75; word-spacing: 0.1em; letter-spacing: 0; font-style: italic; text-align: justify; } 462e5c31af7Sopenharmony_ci.quoteblock blockquote { margin: 0; padding: 0; border: 0; } 463e5c31af7Sopenharmony_ci.quoteblock blockquote:before { content: "\201c"; float: left; font-size: 2.75em; font-weight: bold; line-height: 0.6em; margin-left: -0.6em; color: black; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); } 464e5c31af7Sopenharmony_ci.quoteblock blockquote > .paragraph:last-child p { margin-bottom: 0; } 465e5c31af7Sopenharmony_ci.quoteblock .attribution { margin-top: 0.5em; margin-right: 0.5ex; text-align: right; } 466e5c31af7Sopenharmony_ci.quoteblock .quoteblock { margin-left: 0; margin-right: 0; padding: 0.5em 0; border-left: 3px solid #365E7A; } 467e5c31af7Sopenharmony_ci.quoteblock .quoteblock blockquote { padding: 0 0 0 0.75em; } 468e5c31af7Sopenharmony_ci.quoteblock .quoteblock blockquote:before { display: none; } 469e5c31af7Sopenharmony_ci 470e5c31af7Sopenharmony_ci.verseblock { margin: 0 1em 0.75em 1em; } 471e5c31af7Sopenharmony_ci.verseblock pre { font-family: "Open Sans", "DejaVu Sans", sans; font-size: 1.15rem; color: #333; font-weight: 300; text-rendering: optimizeLegibility; } 472e5c31af7Sopenharmony_ci.verseblock pre strong { font-weight: 400; } 473e5c31af7Sopenharmony_ci.verseblock .attribution { margin-top: 1.25rem; margin-left: 0.5ex; } 474e5c31af7Sopenharmony_ci 475e5c31af7Sopenharmony_ci.quoteblock .attribution, .verseblock .attribution { font-size: 0.8125em; line-height: 1.45; font-style: italic; } 476e5c31af7Sopenharmony_ci.quoteblock .attribution br, .verseblock .attribution br { display: none; } 477e5c31af7Sopenharmony_ci.quoteblock .attribution cite, .verseblock .attribution cite { display: block; letter-spacing: -0.025em; color: #365E7A; } 478e5c31af7Sopenharmony_ci 479e5c31af7Sopenharmony_ci.quoteblock.abstract { margin: 0 0 0.75em 0; display: block; } 480e5c31af7Sopenharmony_ci.quoteblock.abstract blockquote, .quoteblock.abstract blockquote p { text-align: left; word-spacing: 0; } 481e5c31af7Sopenharmony_ci.quoteblock.abstract blockquote:before, .quoteblock.abstract blockquote p:first-of-type:before { display: none; } 482e5c31af7Sopenharmony_ci 483e5c31af7Sopenharmony_citable.tableblock { max-width: 100%; border-collapse: separate; } 484e5c31af7Sopenharmony_citable.tableblock td > .paragraph:last-child p > p:last-child, table.tableblock th > p:last-child, table.tableblock td > p:last-child { margin-bottom: 0; } 485e5c31af7Sopenharmony_ci 486e5c31af7Sopenharmony_citable.tableblock, th.tableblock, td.tableblock { border: 0 solid #d8d8ce; } 487e5c31af7Sopenharmony_ci 488e5c31af7Sopenharmony_citable.grid-all > thead > tr > .tableblock, table.grid-all > tbody > tr > .tableblock { border-width: 0 1px 1px 0; } 489e5c31af7Sopenharmony_ci 490e5c31af7Sopenharmony_citable.grid-all > tfoot > tr > .tableblock { border-width: 1px 1px 0 0; } 491e5c31af7Sopenharmony_ci 492e5c31af7Sopenharmony_citable.grid-cols > * > tr > .tableblock { border-width: 0 1px 0 0; } 493e5c31af7Sopenharmony_ci 494e5c31af7Sopenharmony_citable.grid-rows > thead > tr > .tableblock, table.grid-rows > tbody > tr > .tableblock { border-width: 0 0 1px 0; } 495e5c31af7Sopenharmony_ci 496e5c31af7Sopenharmony_citable.grid-rows > tfoot > tr > .tableblock { border-width: 1px 0 0 0; } 497e5c31af7Sopenharmony_ci 498e5c31af7Sopenharmony_citable.grid-all > * > tr > .tableblock:last-child, table.grid-cols > * > tr > .tableblock:last-child { border-right-width: 0; } 499e5c31af7Sopenharmony_ci 500e5c31af7Sopenharmony_citable.grid-all > tbody > tr:last-child > .tableblock, table.grid-all > thead:last-child > tr > .tableblock, table.grid-rows > tbody > tr:last-child > .tableblock, table.grid-rows > thead:last-child > tr > .tableblock { border-bottom-width: 0; } 501e5c31af7Sopenharmony_ci 502e5c31af7Sopenharmony_citable.frame-all { border-width: 1px; } 503e5c31af7Sopenharmony_ci 504e5c31af7Sopenharmony_citable.frame-sides { border-width: 0 1px; } 505e5c31af7Sopenharmony_ci 506e5c31af7Sopenharmony_citable.frame-topbot { border-width: 1px 0; } 507e5c31af7Sopenharmony_ci 508e5c31af7Sopenharmony_cith.halign-left, td.halign-left { text-align: left; } 509e5c31af7Sopenharmony_ci 510e5c31af7Sopenharmony_cith.halign-right, td.halign-right { text-align: right; } 511e5c31af7Sopenharmony_ci 512e5c31af7Sopenharmony_cith.halign-center, td.halign-center { text-align: center; } 513e5c31af7Sopenharmony_ci 514e5c31af7Sopenharmony_cith.valign-top, td.valign-top { vertical-align: top; } 515e5c31af7Sopenharmony_ci 516e5c31af7Sopenharmony_cith.valign-bottom, td.valign-bottom { vertical-align: bottom; } 517e5c31af7Sopenharmony_ci 518e5c31af7Sopenharmony_cith.valign-middle, td.valign-middle { vertical-align: middle; } 519e5c31af7Sopenharmony_ci 520e5c31af7Sopenharmony_citable thead th, table tfoot th { font-weight: bold; } 521e5c31af7Sopenharmony_ci 522e5c31af7Sopenharmony_citbody tr th { display: table-cell; line-height: 1.4; background: #eee; } 523e5c31af7Sopenharmony_ci 524e5c31af7Sopenharmony_citbody tr th, tbody tr th p, tfoot tr th, tfoot tr th p { color: #222; font-weight: bold; } 525e5c31af7Sopenharmony_ci 526e5c31af7Sopenharmony_cip.tableblock > code:only-child { background: none; padding: 0; } 527e5c31af7Sopenharmony_ci 528e5c31af7Sopenharmony_cip.tableblock { font-size: 1em; } 529e5c31af7Sopenharmony_ci 530e5c31af7Sopenharmony_citd > div.verse { white-space: pre; } 531e5c31af7Sopenharmony_ci 532e5c31af7Sopenharmony_ciol { margin-left: 1.75em; } 533e5c31af7Sopenharmony_ci 534e5c31af7Sopenharmony_ciul li ol { margin-left: 1.5em; } 535e5c31af7Sopenharmony_ci 536e5c31af7Sopenharmony_cidl dd { margin-left: 1.125em; } 537e5c31af7Sopenharmony_ci 538e5c31af7Sopenharmony_cidl dd:last-child, dl dd:last-child > :last-child { margin-bottom: 0; } 539e5c31af7Sopenharmony_ci 540e5c31af7Sopenharmony_ciol > li p, ul > li p, ul dd, ol dd, .olist .olist, .ulist .ulist, .ulist .olist, .olist .ulist { margin-bottom: 0.375em; } 541e5c31af7Sopenharmony_ci 542e5c31af7Sopenharmony_ciul.checklist, ul.none, ol.none, ul.no-bullet, ol.no-bullet, ol.unnumbered, ul.unstyled, ol.unstyled { list-style-type: none; } 543e5c31af7Sopenharmony_ci 544e5c31af7Sopenharmony_ciul.no-bullet, ol.no-bullet, ol.unnumbered { margin-left: 0.625em; } 545e5c31af7Sopenharmony_ci 546e5c31af7Sopenharmony_ciul.unstyled, ol.unstyled { margin-left: 0; } 547e5c31af7Sopenharmony_ci 548e5c31af7Sopenharmony_ciul.checklist { margin-left: 0.625em; } 549e5c31af7Sopenharmony_ci 550e5c31af7Sopenharmony_ciul.checklist li > p:first-child > .fa-square-o:first-child, ul.checklist li > p:first-child > .fa-check-square-o:first-child { width: 1.25em; font-size: 0.8em; position: relative; bottom: 0.125em; } 551e5c31af7Sopenharmony_ci 552e5c31af7Sopenharmony_ciul.checklist li > p:first-child > input[type="checkbox"]:first-child { margin-right: 0.25em; } 553e5c31af7Sopenharmony_ci 554e5c31af7Sopenharmony_ciul.inline { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-flow: row wrap; -webkit-flex-flow: row wrap; flex-flow: row wrap; list-style: none; margin: 0 0 0.375em -0.75em; } 555e5c31af7Sopenharmony_ci 556e5c31af7Sopenharmony_ciul.inline > li { margin-left: 0.75em; } 557e5c31af7Sopenharmony_ci 558e5c31af7Sopenharmony_ci.unstyled dl dt { font-weight: normal; font-style: normal; } 559e5c31af7Sopenharmony_ci 560e5c31af7Sopenharmony_ciol.arabic { list-style-type: decimal; } 561e5c31af7Sopenharmony_ci 562e5c31af7Sopenharmony_ciol.decimal { list-style-type: decimal-leading-zero; } 563e5c31af7Sopenharmony_ci 564e5c31af7Sopenharmony_ciol.loweralpha { list-style-type: lower-alpha; } 565e5c31af7Sopenharmony_ci 566e5c31af7Sopenharmony_ciol.upperalpha { list-style-type: upper-alpha; } 567e5c31af7Sopenharmony_ci 568e5c31af7Sopenharmony_ciol.lowerroman { list-style-type: lower-roman; } 569e5c31af7Sopenharmony_ci 570e5c31af7Sopenharmony_ciol.upperroman { list-style-type: upper-roman; } 571e5c31af7Sopenharmony_ci 572e5c31af7Sopenharmony_ciol.lowergreek { list-style-type: lower-greek; } 573e5c31af7Sopenharmony_ci 574e5c31af7Sopenharmony_ci.hdlist > table, .colist > table { border: 0; background: none; } 575e5c31af7Sopenharmony_ci.hdlist > table > tbody > tr, .colist > table > tbody > tr { background: none; } 576e5c31af7Sopenharmony_ci 577e5c31af7Sopenharmony_citd.hdlist1, td.hdlist2 { vertical-align: top; padding: 0 0.625em; } 578e5c31af7Sopenharmony_ci 579e5c31af7Sopenharmony_citd.hdlist1 { font-weight: bold; padding-bottom: 0.75em; } 580e5c31af7Sopenharmony_ci 581e5c31af7Sopenharmony_ci.literalblock + .colist, .listingblock + .colist { margin-top: -0.5em; } 582e5c31af7Sopenharmony_ci 583e5c31af7Sopenharmony_ci.colist > table tr > td:first-of-type { padding: 0.4em 0.75em 0 0.75em; line-height: 1; vertical-align: top; } 584e5c31af7Sopenharmony_ci.colist > table tr > td:first-of-type img { max-width: initial; } 585e5c31af7Sopenharmony_ci.colist > table tr > td:last-of-type { padding: 0.25em 0; } 586e5c31af7Sopenharmony_ci 587e5c31af7Sopenharmony_ci.thumb, .th { line-height: 0; display: inline-block; border: solid 4px #fff; -webkit-box-shadow: 0 0 0 1px #ddd; box-shadow: 0 0 0 1px #ddd; } 588e5c31af7Sopenharmony_ci 589e5c31af7Sopenharmony_ci.imageblock.left, .imageblock[style*="float: left"] { margin: 0.25em 0.625em 1.25em 0; } 590e5c31af7Sopenharmony_ci.imageblock.right, .imageblock[style*="float: right"] { margin: 0.25em 0 1.25em 0.625em; } 591e5c31af7Sopenharmony_ci.imageblock > .title { margin-bottom: 0; } 592e5c31af7Sopenharmony_ci.imageblock.thumb, .imageblock.th { border-width: 6px; } 593e5c31af7Sopenharmony_ci.imageblock.thumb > .title, .imageblock.th > .title { padding: 0 0.125em; } 594e5c31af7Sopenharmony_ci 595e5c31af7Sopenharmony_ci.image.left, .image.right { margin-top: 0.25em; margin-bottom: 0.25em; display: inline-block; line-height: 0; } 596e5c31af7Sopenharmony_ci.image.left { margin-right: 0.625em; } 597e5c31af7Sopenharmony_ci.image.right { margin-left: 0.625em; } 598e5c31af7Sopenharmony_ci 599e5c31af7Sopenharmony_cia.image { text-decoration: none; display: inline-block; } 600e5c31af7Sopenharmony_cia.image object { pointer-events: none; } 601e5c31af7Sopenharmony_ci 602e5c31af7Sopenharmony_cisup.footnote, sup.footnoteref { font-size: 0.875em; position: static; vertical-align: super; } 603e5c31af7Sopenharmony_cisup.footnote a, sup.footnoteref a { text-decoration: none; } 604e5c31af7Sopenharmony_cisup.footnote a:active, sup.footnoteref a:active { text-decoration: underline; } 605e5c31af7Sopenharmony_ci 606e5c31af7Sopenharmony_ci#footnotes { padding-top: 0.75em; padding-bottom: 0.75em; margin-bottom: 0.625em; } 607e5c31af7Sopenharmony_ci#footnotes hr { width: 20%; min-width: 6.25em; margin: -0.25em 0 0.75em 0; border-width: 1px 0 0 0; } 608e5c31af7Sopenharmony_ci#footnotes .footnote { padding: 0 0.375em 0 0.225em; line-height: 1.3334; font-size: 0.875em; margin-left: 1.2em; margin-bottom: 0.2em; } 609e5c31af7Sopenharmony_ci#footnotes .footnote a:first-of-type { font-weight: bold; text-decoration: none; margin-left: -1.05em; } 610e5c31af7Sopenharmony_ci#footnotes .footnote:last-of-type { margin-bottom: 0; } 611e5c31af7Sopenharmony_ci#content #footnotes { margin-top: -0.625em; margin-bottom: 0; padding: 0.75em 0; } 612e5c31af7Sopenharmony_ci 613e5c31af7Sopenharmony_ci.gist .file-data > table { border: 0; background: #fff; width: 100%; margin-bottom: 0; } 614e5c31af7Sopenharmony_ci.gist .file-data > table td.line-data { width: 99%; } 615e5c31af7Sopenharmony_ci 616e5c31af7Sopenharmony_cidiv.unbreakable { page-break-inside: avoid; } 617e5c31af7Sopenharmony_ci 618e5c31af7Sopenharmony_ci.big { font-size: larger; } 619e5c31af7Sopenharmony_ci 620e5c31af7Sopenharmony_ci.small { font-size: smaller; } 621e5c31af7Sopenharmony_ci 622e5c31af7Sopenharmony_ci.underline { text-decoration: underline; } 623e5c31af7Sopenharmony_ci 624e5c31af7Sopenharmony_ci.overline { text-decoration: overline; } 625e5c31af7Sopenharmony_ci 626e5c31af7Sopenharmony_ci.line-through { text-decoration: line-through; } 627e5c31af7Sopenharmony_ci 628e5c31af7Sopenharmony_ci.aqua { color: #00bfbf; } 629e5c31af7Sopenharmony_ci 630e5c31af7Sopenharmony_ci.aqua-background { background-color: #00fafa; } 631e5c31af7Sopenharmony_ci 632e5c31af7Sopenharmony_ci.black { color: black; } 633e5c31af7Sopenharmony_ci 634e5c31af7Sopenharmony_ci.black-background { background-color: black; } 635e5c31af7Sopenharmony_ci 636e5c31af7Sopenharmony_ci.blue { color: #0000bf; } 637e5c31af7Sopenharmony_ci 638e5c31af7Sopenharmony_ci.blue-background { background-color: #0000fa; } 639e5c31af7Sopenharmony_ci 640e5c31af7Sopenharmony_ci.fuchsia { color: #bf00bf; } 641e5c31af7Sopenharmony_ci 642e5c31af7Sopenharmony_ci.fuchsia-background { background-color: #fa00fa; } 643e5c31af7Sopenharmony_ci 644e5c31af7Sopenharmony_ci.gray { color: #606060; } 645e5c31af7Sopenharmony_ci 646e5c31af7Sopenharmony_ci.gray-background { background-color: #7d7d7d; } 647e5c31af7Sopenharmony_ci 648e5c31af7Sopenharmony_ci.green { color: #006000; } 649e5c31af7Sopenharmony_ci 650e5c31af7Sopenharmony_ci.green-background { background-color: #007d00; } 651e5c31af7Sopenharmony_ci 652e5c31af7Sopenharmony_ci.lime { color: #00bf00; } 653e5c31af7Sopenharmony_ci 654e5c31af7Sopenharmony_ci.lime-background { background-color: #00fa00; } 655e5c31af7Sopenharmony_ci 656e5c31af7Sopenharmony_ci.maroon { color: #600000; } 657e5c31af7Sopenharmony_ci 658e5c31af7Sopenharmony_ci.maroon-background { background-color: #7d0000; } 659e5c31af7Sopenharmony_ci 660e5c31af7Sopenharmony_ci.navy { color: #000060; } 661e5c31af7Sopenharmony_ci 662e5c31af7Sopenharmony_ci.navy-background { background-color: #00007d; } 663e5c31af7Sopenharmony_ci 664e5c31af7Sopenharmony_ci.olive { color: #606000; } 665e5c31af7Sopenharmony_ci 666e5c31af7Sopenharmony_ci.olive-background { background-color: #7d7d00; } 667e5c31af7Sopenharmony_ci 668e5c31af7Sopenharmony_ci.purple { color: #600060; } 669e5c31af7Sopenharmony_ci 670e5c31af7Sopenharmony_ci.purple-background { background-color: #7d007d; } 671e5c31af7Sopenharmony_ci 672e5c31af7Sopenharmony_ci.red { color: #bf0000; } 673e5c31af7Sopenharmony_ci 674e5c31af7Sopenharmony_ci.red-background { background-color: #fa0000; } 675e5c31af7Sopenharmony_ci 676e5c31af7Sopenharmony_ci.silver { color: #909090; } 677e5c31af7Sopenharmony_ci 678e5c31af7Sopenharmony_ci.silver-background { background-color: #bcbcbc; } 679e5c31af7Sopenharmony_ci 680e5c31af7Sopenharmony_ci.teal { color: #006060; } 681e5c31af7Sopenharmony_ci 682e5c31af7Sopenharmony_ci.teal-background { background-color: #007d7d; } 683e5c31af7Sopenharmony_ci 684e5c31af7Sopenharmony_ci.white { color: #bfbfbf; } 685e5c31af7Sopenharmony_ci 686e5c31af7Sopenharmony_ci.white-background { background-color: #fafafa; } 687e5c31af7Sopenharmony_ci 688e5c31af7Sopenharmony_ci.yellow { color: #bfbf00; } 689e5c31af7Sopenharmony_ci 690e5c31af7Sopenharmony_ci.yellow-background { background-color: #fafa00; } 691e5c31af7Sopenharmony_ci 692e5c31af7Sopenharmony_cispan.icon > .fa { cursor: default; } 693e5c31af7Sopenharmony_cia span.icon > .fa { cursor: inherit; } 694e5c31af7Sopenharmony_ci 695e5c31af7Sopenharmony_ci.admonitionblock td.icon [class^="fa icon-"] { font-size: 2.5em; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); cursor: default; } 696e5c31af7Sopenharmony_ci.admonitionblock td.icon .icon-note:before { content: "\f05a"; color: #29475c; } 697e5c31af7Sopenharmony_ci.admonitionblock td.icon .icon-tip:before { content: "\f0eb"; text-shadow: 1px 1px 2px rgba(155, 155, 0, 0.8); color: #111; } 698e5c31af7Sopenharmony_ci.admonitionblock td.icon .icon-warning:before { content: "\f071"; color: #bf6900; } 699e5c31af7Sopenharmony_ci.admonitionblock td.icon .icon-caution:before { content: "\f06d"; color: #bf3400; } 700e5c31af7Sopenharmony_ci.admonitionblock td.icon .icon-important:before { content: "\f06a"; color: #bf0000; } 701e5c31af7Sopenharmony_ci 702e5c31af7Sopenharmony_ci.conum[data-value] { display: inline-block; color: #fff !important; background-color: black; -webkit-border-radius: 100px; border-radius: 100px; text-align: center; font-size: 0.75em; width: 1.67em; height: 1.67em; line-height: 1.67em; font-family: "Open Sans", "DejaVu Sans", sans-serif; font-style: normal; font-weight: bold; } 703e5c31af7Sopenharmony_ci.conum[data-value] * { color: #fff !important; } 704e5c31af7Sopenharmony_ci.conum[data-value] + b { display: none; } 705e5c31af7Sopenharmony_ci.conum[data-value]:after { content: attr(data-value); } 706e5c31af7Sopenharmony_cipre .conum[data-value] { position: relative; top: -0.125em; } 707e5c31af7Sopenharmony_ci 708e5c31af7Sopenharmony_cib.conum * { color: inherit !important; } 709e5c31af7Sopenharmony_ci 710e5c31af7Sopenharmony_ci.conum:not([data-value]):empty { display: none; } 711e5c31af7Sopenharmony_ci 712e5c31af7Sopenharmony_cih1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 { border-bottom: 1px solid #ddd; } 713e5c31af7Sopenharmony_ci 714e5c31af7Sopenharmony_ci.sect1 { padding-bottom: 0; } 715e5c31af7Sopenharmony_ci 716e5c31af7Sopenharmony_ci#toctitle { color: #00406F; font-weight: normal; margin-top: 1.5em; } 717e5c31af7Sopenharmony_ci 718e5c31af7Sopenharmony_ci.sidebarblock { border-color: #aaa; } 719e5c31af7Sopenharmony_ci 720e5c31af7Sopenharmony_cicode { -webkit-border-radius: 4px; border-radius: 4px; } 721e5c31af7Sopenharmony_ci 722e5c31af7Sopenharmony_cip.tableblock.header { color: #6d6e71; } 723e5c31af7Sopenharmony_ci 724e5c31af7Sopenharmony_ci.literalblock pre, .listingblock pre { background: #eee; } 725e5c31af7Sopenharmony_ci 726e5c31af7Sopenharmony_ci/* From https://github.com/KhronosGroup/Vulkan-Docs/pull/901 */ 727e5c31af7Sopenharmony_cia code { color: inherit; } 728e5c31af7Sopenharmony_ci 729e5c31af7Sopenharmony_ci/* From https://github.com/KhronosGroup/Vulkan-Docs/pull/1157 */ 730e5c31af7Sopenharmony_ci/* Make VUID anchor handles*/ 731e5c31af7Sopenharmony_cili > p > a[id^="VUID-"] { visibility: hidden; position: absolute; z-index: 1001; width: 2.2ex; margin-left: -2.2ex; display: block; text-decoration: none !important; text-align: center; font-weight: normal; } 732e5c31af7Sopenharmony_ci 733e5c31af7Sopenharmony_cili > p > a[id^="VUID-"]:before { content: "\00A7"; font-size: 1em; display: block; padding-top: 0em; background: #fff; } 734e5c31af7Sopenharmony_ci 735e5c31af7Sopenharmony_cili > p:hover > a[id^="VUID-"], li > p > a[id^="VUID-"]:hover { visibility: visible; } 736e5c31af7Sopenharmony_ci 737e5c31af7Sopenharmony_cili > p > a[id^="VUID-"].link { color: black; text-decoration: none; } 738e5c31af7Sopenharmony_ci 739e5c31af7Sopenharmony_ci/* TODO: not quite sure what these two do */ 740e5c31af7Sopenharmony_cili > p > a[id^="VUID-"].link:hover { color: black; } 741e5c31af7Sopenharmony_ci 742e5c31af7Sopenharmony_ci.vuid { color: #4d4d4d; font-family: monospace; } 743e5c31af7Sopenharmony_ci 744e5c31af7Sopenharmony_ci</style> 745e5c31af7Sopenharmony_ci<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> 746e5c31af7Sopenharmony_ci<style> 747e5c31af7Sopenharmony_cipre.rouge table td { padding: 5px; } 748e5c31af7Sopenharmony_cipre.rouge table pre { margin: 0; } 749e5c31af7Sopenharmony_cipre.rouge .cm { 750e5c31af7Sopenharmony_ci color: #999988; 751e5c31af7Sopenharmony_ci font-style: italic; 752e5c31af7Sopenharmony_ci} 753e5c31af7Sopenharmony_cipre.rouge .cp { 754e5c31af7Sopenharmony_ci color: #999999; 755e5c31af7Sopenharmony_ci font-weight: bold; 756e5c31af7Sopenharmony_ci} 757e5c31af7Sopenharmony_cipre.rouge .c1 { 758e5c31af7Sopenharmony_ci color: #999988; 759e5c31af7Sopenharmony_ci font-style: italic; 760e5c31af7Sopenharmony_ci} 761e5c31af7Sopenharmony_cipre.rouge .cs { 762e5c31af7Sopenharmony_ci color: #999999; 763e5c31af7Sopenharmony_ci font-weight: bold; 764e5c31af7Sopenharmony_ci font-style: italic; 765e5c31af7Sopenharmony_ci} 766e5c31af7Sopenharmony_cipre.rouge .c, pre.rouge .ch, pre.rouge .cd, pre.rouge .cpf { 767e5c31af7Sopenharmony_ci color: #999988; 768e5c31af7Sopenharmony_ci font-style: italic; 769e5c31af7Sopenharmony_ci} 770e5c31af7Sopenharmony_cipre.rouge .err { 771e5c31af7Sopenharmony_ci color: #a61717; 772e5c31af7Sopenharmony_ci background-color: #e3d2d2; 773e5c31af7Sopenharmony_ci} 774e5c31af7Sopenharmony_cipre.rouge .gd { 775e5c31af7Sopenharmony_ci color: #000000; 776e5c31af7Sopenharmony_ci background-color: #ffdddd; 777e5c31af7Sopenharmony_ci} 778e5c31af7Sopenharmony_cipre.rouge .ge { 779e5c31af7Sopenharmony_ci color: #000000; 780e5c31af7Sopenharmony_ci font-style: italic; 781e5c31af7Sopenharmony_ci} 782e5c31af7Sopenharmony_cipre.rouge .gr { 783e5c31af7Sopenharmony_ci color: #aa0000; 784e5c31af7Sopenharmony_ci} 785e5c31af7Sopenharmony_cipre.rouge .gh { 786e5c31af7Sopenharmony_ci color: #999999; 787e5c31af7Sopenharmony_ci} 788e5c31af7Sopenharmony_cipre.rouge .gi { 789e5c31af7Sopenharmony_ci color: #000000; 790e5c31af7Sopenharmony_ci background-color: #ddffdd; 791e5c31af7Sopenharmony_ci} 792e5c31af7Sopenharmony_cipre.rouge .go { 793e5c31af7Sopenharmony_ci color: #888888; 794e5c31af7Sopenharmony_ci} 795e5c31af7Sopenharmony_cipre.rouge .gp { 796e5c31af7Sopenharmony_ci color: #555555; 797e5c31af7Sopenharmony_ci} 798e5c31af7Sopenharmony_cipre.rouge .gs { 799e5c31af7Sopenharmony_ci font-weight: bold; 800e5c31af7Sopenharmony_ci} 801e5c31af7Sopenharmony_cipre.rouge .gu { 802e5c31af7Sopenharmony_ci color: #aaaaaa; 803e5c31af7Sopenharmony_ci} 804e5c31af7Sopenharmony_cipre.rouge .gt { 805e5c31af7Sopenharmony_ci color: #aa0000; 806e5c31af7Sopenharmony_ci} 807e5c31af7Sopenharmony_cipre.rouge .kc { 808e5c31af7Sopenharmony_ci color: #000000; 809e5c31af7Sopenharmony_ci font-weight: bold; 810e5c31af7Sopenharmony_ci} 811e5c31af7Sopenharmony_cipre.rouge .kd { 812e5c31af7Sopenharmony_ci color: #000000; 813e5c31af7Sopenharmony_ci font-weight: bold; 814e5c31af7Sopenharmony_ci} 815e5c31af7Sopenharmony_cipre.rouge .kn { 816e5c31af7Sopenharmony_ci color: #000000; 817e5c31af7Sopenharmony_ci font-weight: bold; 818e5c31af7Sopenharmony_ci} 819e5c31af7Sopenharmony_cipre.rouge .kp { 820e5c31af7Sopenharmony_ci color: #000000; 821e5c31af7Sopenharmony_ci font-weight: bold; 822e5c31af7Sopenharmony_ci} 823e5c31af7Sopenharmony_cipre.rouge .kr { 824e5c31af7Sopenharmony_ci color: #000000; 825e5c31af7Sopenharmony_ci font-weight: bold; 826e5c31af7Sopenharmony_ci} 827e5c31af7Sopenharmony_cipre.rouge .kt { 828e5c31af7Sopenharmony_ci color: #445588; 829e5c31af7Sopenharmony_ci font-weight: bold; 830e5c31af7Sopenharmony_ci} 831e5c31af7Sopenharmony_cipre.rouge .k, pre.rouge .kv { 832e5c31af7Sopenharmony_ci color: #000000; 833e5c31af7Sopenharmony_ci font-weight: bold; 834e5c31af7Sopenharmony_ci} 835e5c31af7Sopenharmony_cipre.rouge .mf { 836e5c31af7Sopenharmony_ci color: #009999; 837e5c31af7Sopenharmony_ci} 838e5c31af7Sopenharmony_cipre.rouge .mh { 839e5c31af7Sopenharmony_ci color: #009999; 840e5c31af7Sopenharmony_ci} 841e5c31af7Sopenharmony_cipre.rouge .il { 842e5c31af7Sopenharmony_ci color: #009999; 843e5c31af7Sopenharmony_ci} 844e5c31af7Sopenharmony_cipre.rouge .mi { 845e5c31af7Sopenharmony_ci color: #009999; 846e5c31af7Sopenharmony_ci} 847e5c31af7Sopenharmony_cipre.rouge .mo { 848e5c31af7Sopenharmony_ci color: #009999; 849e5c31af7Sopenharmony_ci} 850e5c31af7Sopenharmony_cipre.rouge .m, pre.rouge .mb, pre.rouge .mx { 851e5c31af7Sopenharmony_ci color: #009999; 852e5c31af7Sopenharmony_ci} 853e5c31af7Sopenharmony_cipre.rouge .sa { 854e5c31af7Sopenharmony_ci color: #000000; 855e5c31af7Sopenharmony_ci font-weight: bold; 856e5c31af7Sopenharmony_ci} 857e5c31af7Sopenharmony_cipre.rouge .sb { 858e5c31af7Sopenharmony_ci color: #d14; 859e5c31af7Sopenharmony_ci} 860e5c31af7Sopenharmony_cipre.rouge .sc { 861e5c31af7Sopenharmony_ci color: #d14; 862e5c31af7Sopenharmony_ci} 863e5c31af7Sopenharmony_cipre.rouge .sd { 864e5c31af7Sopenharmony_ci color: #d14; 865e5c31af7Sopenharmony_ci} 866e5c31af7Sopenharmony_cipre.rouge .s2 { 867e5c31af7Sopenharmony_ci color: #d14; 868e5c31af7Sopenharmony_ci} 869e5c31af7Sopenharmony_cipre.rouge .se { 870e5c31af7Sopenharmony_ci color: #d14; 871e5c31af7Sopenharmony_ci} 872e5c31af7Sopenharmony_cipre.rouge .sh { 873e5c31af7Sopenharmony_ci color: #d14; 874e5c31af7Sopenharmony_ci} 875e5c31af7Sopenharmony_cipre.rouge .si { 876e5c31af7Sopenharmony_ci color: #d14; 877e5c31af7Sopenharmony_ci} 878e5c31af7Sopenharmony_cipre.rouge .sx { 879e5c31af7Sopenharmony_ci color: #d14; 880e5c31af7Sopenharmony_ci} 881e5c31af7Sopenharmony_cipre.rouge .sr { 882e5c31af7Sopenharmony_ci color: #009926; 883e5c31af7Sopenharmony_ci} 884e5c31af7Sopenharmony_cipre.rouge .s1 { 885e5c31af7Sopenharmony_ci color: #d14; 886e5c31af7Sopenharmony_ci} 887e5c31af7Sopenharmony_cipre.rouge .ss { 888e5c31af7Sopenharmony_ci color: #990073; 889e5c31af7Sopenharmony_ci} 890e5c31af7Sopenharmony_cipre.rouge .s, pre.rouge .dl { 891e5c31af7Sopenharmony_ci color: #d14; 892e5c31af7Sopenharmony_ci} 893e5c31af7Sopenharmony_cipre.rouge .na { 894e5c31af7Sopenharmony_ci color: #008080; 895e5c31af7Sopenharmony_ci} 896e5c31af7Sopenharmony_cipre.rouge .bp { 897e5c31af7Sopenharmony_ci color: #999999; 898e5c31af7Sopenharmony_ci} 899e5c31af7Sopenharmony_cipre.rouge .nb { 900e5c31af7Sopenharmony_ci color: #0086B3; 901e5c31af7Sopenharmony_ci} 902e5c31af7Sopenharmony_cipre.rouge .nc { 903e5c31af7Sopenharmony_ci color: #445588; 904e5c31af7Sopenharmony_ci font-weight: bold; 905e5c31af7Sopenharmony_ci} 906e5c31af7Sopenharmony_cipre.rouge .no { 907e5c31af7Sopenharmony_ci color: #008080; 908e5c31af7Sopenharmony_ci} 909e5c31af7Sopenharmony_cipre.rouge .nd { 910e5c31af7Sopenharmony_ci color: #3c5d5d; 911e5c31af7Sopenharmony_ci font-weight: bold; 912e5c31af7Sopenharmony_ci} 913e5c31af7Sopenharmony_cipre.rouge .ni { 914e5c31af7Sopenharmony_ci color: #800080; 915e5c31af7Sopenharmony_ci} 916e5c31af7Sopenharmony_cipre.rouge .ne { 917e5c31af7Sopenharmony_ci color: #990000; 918e5c31af7Sopenharmony_ci font-weight: bold; 919e5c31af7Sopenharmony_ci} 920e5c31af7Sopenharmony_cipre.rouge .nf, pre.rouge .fm { 921e5c31af7Sopenharmony_ci color: #990000; 922e5c31af7Sopenharmony_ci font-weight: bold; 923e5c31af7Sopenharmony_ci} 924e5c31af7Sopenharmony_cipre.rouge .nl { 925e5c31af7Sopenharmony_ci color: #990000; 926e5c31af7Sopenharmony_ci font-weight: bold; 927e5c31af7Sopenharmony_ci} 928e5c31af7Sopenharmony_cipre.rouge .nn { 929e5c31af7Sopenharmony_ci color: #555555; 930e5c31af7Sopenharmony_ci} 931e5c31af7Sopenharmony_cipre.rouge .nt { 932e5c31af7Sopenharmony_ci color: #000080; 933e5c31af7Sopenharmony_ci} 934e5c31af7Sopenharmony_cipre.rouge .vc { 935e5c31af7Sopenharmony_ci color: #008080; 936e5c31af7Sopenharmony_ci} 937e5c31af7Sopenharmony_cipre.rouge .vg { 938e5c31af7Sopenharmony_ci color: #008080; 939e5c31af7Sopenharmony_ci} 940e5c31af7Sopenharmony_cipre.rouge .vi { 941e5c31af7Sopenharmony_ci color: #008080; 942e5c31af7Sopenharmony_ci} 943e5c31af7Sopenharmony_cipre.rouge .nv, pre.rouge .vm { 944e5c31af7Sopenharmony_ci color: #008080; 945e5c31af7Sopenharmony_ci} 946e5c31af7Sopenharmony_cipre.rouge .ow { 947e5c31af7Sopenharmony_ci color: #000000; 948e5c31af7Sopenharmony_ci font-weight: bold; 949e5c31af7Sopenharmony_ci} 950e5c31af7Sopenharmony_cipre.rouge .o { 951e5c31af7Sopenharmony_ci color: #000000; 952e5c31af7Sopenharmony_ci font-weight: bold; 953e5c31af7Sopenharmony_ci} 954e5c31af7Sopenharmony_cipre.rouge .w { 955e5c31af7Sopenharmony_ci color: #bbbbbb; 956e5c31af7Sopenharmony_ci} 957e5c31af7Sopenharmony_cipre.rouge { 958e5c31af7Sopenharmony_ci background-color: #f8f8f8; 959e5c31af7Sopenharmony_ci} 960e5c31af7Sopenharmony_ci</style> 961e5c31af7Sopenharmony_ci<style> 962e5c31af7Sopenharmony_ci/* Khronos overrides for Rouge 'github' theme for accessibility */ 963e5c31af7Sopenharmony_ci/* Basically everything is overridden, but it is unclear how to add a new Rouge theme */ 964e5c31af7Sopenharmony_ci/* Codelike overrides */ 965e5c31af7Sopenharmony_cipre.rouge .cm, pre.rouge .cp, pre.rouge .c1, pre.rouge .cs, 966e5c31af7Sopenharmony_cipre.rouge .c, pre.rouge .ch, pre.rouge .cd, pre.rouge .cpf, 967e5c31af7Sopenharmony_cipre.rouge .gh, pre.rouge .bp { 968e5c31af7Sopenharmony_ci color: #5f5f5f; 969e5c31af7Sopenharmony_ci} 970e5c31af7Sopenharmony_ci/* Numberlike overrides */ 971e5c31af7Sopenharmony_cipre.rouge .mf, pre.rouge .mh, pre.rouge .il, pre.rouge .mi, 972e5c31af7Sopenharmony_cipre.rouge .mo, pre.rouge .m, pre.rouge .mb, pre.rouge .mx { 973e5c31af7Sopenharmony_ci color: #007f7f; 974e5c31af7Sopenharmony_ci} 975e5c31af7Sopenharmony_ci/* Namelike overrides */ 976e5c31af7Sopenharmony_cipre.rouge .ne, pre.rouge .nf, pre.rouge .fm, pre.rouge .nl { 977e5c31af7Sopenharmony_ci color: #5f0000; 978e5c31af7Sopenharmony_ci} 979e5c31af7Sopenharmony_ci/* Other things ANDI warns about - unsure of their purposes */ 980e5c31af7Sopenharmony_cipre.rouge .go, pre.rouge .gu { 981e5c31af7Sopenharmony_ci color: #727272; 982e5c31af7Sopenharmony_ci} 983e5c31af7Sopenharmony_cipre.rouge .sr { 984e5c31af7Sopenharmony_ci color: #008512; 985e5c31af7Sopenharmony_ci} 986e5c31af7Sopenharmony_cipre.rouge .na, pre.rouge .nb { 987e5c31af7Sopenharmony_ci color: #007f7f; 988e5c31af7Sopenharmony_ci} 989e5c31af7Sopenharmony_cipre.rouge .no, pre.rouge .vc, pre.rouge .vg, pre.rouge .vi, 990e5c31af7Sopenharmony_cipre.rouge .nv, pre.rouge .vm { 991e5c31af7Sopenharmony_ci color: #007f7f; 992e5c31af7Sopenharmony_ci} 993e5c31af7Sopenharmony_cipre.rouge .w { 994e5c31af7Sopenharmony_ci color: #727272; 995e5c31af7Sopenharmony_ci} 996e5c31af7Sopenharmony_ci</style> 997e5c31af7Sopenharmony_ci 998e5c31af7Sopenharmony_ci<!-- dragged in by font-awesome css included by asciidoctor, but preloaded in this extension for convenience --> 999e5c31af7Sopenharmony_ci<link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/fonts/fontawesome-webfont.woff2?v=4.7.0" as="font" type="font/woff2" crossorigin=""> 1000e5c31af7Sopenharmony_ci 1001e5c31af7Sopenharmony_ci<!-- Note: Chrome needs crossorigin="" even for same-origin fonts --> 1002e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Main-Bold.woff2" as="font" type="font/woff2" crossorigin=""> 1003e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Main-Italic.woff2" as="font" type="font/woff2" crossorigin=""> 1004e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Main-Regular.woff2" as="font" type="font/woff2" crossorigin=""> 1005e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Math-Italic.woff2" as="font" type="font/woff2" crossorigin=""> 1006e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Size1-Regular.woff2" as="font" type="font/woff2" crossorigin=""> 1007e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Size2-Regular.woff2" as="font" type="font/woff2" crossorigin=""> 1008e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Size3-Regular.woff2" as="font" type="font/woff2" crossorigin=""> 1009e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Size4-Regular.woff2" as="font" type="font/woff2" crossorigin=""> 1010e5c31af7Sopenharmony_ci<link rel="preload" href="../katex/fonts/KaTeX_Typewriter-Regular.woff2" as="font" type="font/woff2" crossorigin=""><link rel="stylesheet" href="../katex/katex.min.css"> 1011e5c31af7Sopenharmony_ci<!--ChunkedSearchJSMarker--> 1012e5c31af7Sopenharmony_ci<style> 1013e5c31af7Sopenharmony_ci #loading_msg { 1014e5c31af7Sopenharmony_ci width: 100%; 1015e5c31af7Sopenharmony_ci margin-left: auto; 1016e5c31af7Sopenharmony_ci margin-right: auto; 1017e5c31af7Sopenharmony_ci margin-top: 1ex; 1018e5c31af7Sopenharmony_ci margin-bottom: 1ex; 1019e5c31af7Sopenharmony_ci max-width: 62.5em; 1020e5c31af7Sopenharmony_ci position: relative; 1021e5c31af7Sopenharmony_ci padding-left: 1.5em; 1022e5c31af7Sopenharmony_ci padding-right: 1.5em; 1023e5c31af7Sopenharmony_ci } 1024e5c31af7Sopenharmony_ci .hidden {display: none;} 1025e5c31af7Sopenharmony_ci</style> 1026e5c31af7Sopenharmony_ci<script> 1027e5c31af7Sopenharmony_ci function hideElement(e){ 1028e5c31af7Sopenharmony_ci e.setAttribute("hidden", ""); 1029e5c31af7Sopenharmony_ci e.classList.add("hidden"); 1030e5c31af7Sopenharmony_ci } 1031e5c31af7Sopenharmony_ci 1032e5c31af7Sopenharmony_ci function unhideElement(e){ 1033e5c31af7Sopenharmony_ci e.classList.remove("hidden"); 1034e5c31af7Sopenharmony_ci e.removeAttribute("hidden"); 1035e5c31af7Sopenharmony_ci } 1036e5c31af7Sopenharmony_ci 1037e5c31af7Sopenharmony_ci function hideLoadableContent(){ 1038e5c31af7Sopenharmony_ci unhideElement( document.getElementById("loading_msg") ); 1039e5c31af7Sopenharmony_ci for( var loadable of document.getElementsByClassName("loadable") ) hideElement(loadable); 1040e5c31af7Sopenharmony_ci } 1041e5c31af7Sopenharmony_ci 1042e5c31af7Sopenharmony_ci function unhideLoadableContent(){ 1043e5c31af7Sopenharmony_ci hideElement( document.getElementById("loading_msg") ); 1044e5c31af7Sopenharmony_ci for( var loadable of document.getElementsByClassName("loadable") ) unhideElement(loadable); 1045e5c31af7Sopenharmony_ci } 1046e5c31af7Sopenharmony_ci 1047e5c31af7Sopenharmony_ci window.addEventListener("load", unhideLoadableContent); 1048e5c31af7Sopenharmony_ci</script> 1049e5c31af7Sopenharmony_ci</head> 1050e5c31af7Sopenharmony_ci<body class="book toc2 toc-left"> 1051e5c31af7Sopenharmony_ci<div id="header"> 1052e5c31af7Sopenharmony_ci<h1>Test<sup>®</sup> 1.2.3 - (with all registered extensions)</h1> 1053e5c31af7Sopenharmony_ci<div class="details"> 1054e5c31af7Sopenharmony_ci<span id="author" class="author">The Khronos<sup>®</sup> Vulkan Working Group</span><br> 1055e5c31af7Sopenharmony_ci<span id="revnumber">version 1.2.3,</span> 1056e5c31af7Sopenharmony_ci<span id="revdate">"2100-11-22 00:33:44Z"</span> 1057e5c31af7Sopenharmony_ci<br><span id="revremark">"test build"</span> 1058e5c31af7Sopenharmony_ci</div> 1059e5c31af7Sopenharmony_ci<div id="toc" class="toc2"> 1060e5c31af7Sopenharmony_ci<div id="toctitle">Table of Contents</div> 1061e5c31af7Sopenharmony_ci<ul class="sectlevel1"> 1062e5c31af7Sopenharmony_ci<li><a href="#preamble">1. Preamble</a></li> 1063e5c31af7Sopenharmony_ci<li><a href="#lorem">2. Lorem</a> 1064e5c31af7Sopenharmony_ci<ul class="sectlevel2"> 1065e5c31af7Sopenharmony_ci<li><a href="#lorem-subchapter">2.1. Lorem Subchapter</a></li> 1066e5c31af7Sopenharmony_ci</ul> 1067e5c31af7Sopenharmony_ci</li> 1068e5c31af7Sopenharmony_ci<li><a href="#hic">3. Host Image Copy</a></li> 1069e5c31af7Sopenharmony_ci<li><a href="#extensions">Layers & Extensions (Informative)</a> 1070e5c31af7Sopenharmony_ci<ul class="sectlevel2"> 1071e5c31af7Sopenharmony_ci<li><a href="#_extension_dependencies">Extension Dependencies</a></li> 1072e5c31af7Sopenharmony_ci</ul> 1073e5c31af7Sopenharmony_ci</li> 1074e5c31af7Sopenharmony_ci</ul> 1075e5c31af7Sopenharmony_ci</div> 1076e5c31af7Sopenharmony_ci</div> 1077e5c31af7Sopenharmony_ci<div id="loading_msg" class="hidden" hidden><p>Loading… please wait.</p></div> 1078e5c31af7Sopenharmony_ci<!--ChunkedSearchboxMarker--> 1079e5c31af7Sopenharmony_ci<div id="content" class="loadable" ><script>hideLoadableContent();</script> 1080e5c31af7Sopenharmony_ci<div id="preamble"> 1081e5c31af7Sopenharmony_ci<div class="sectionbody"> 1082e5c31af7Sopenharmony_ci<!-- toc disabled --> 1083e5c31af7Sopenharmony_ci<div style="page-break-after: always;"></div> 1084e5c31af7Sopenharmony_ci</div> 1085e5c31af7Sopenharmony_ci</div> 1086e5c31af7Sopenharmony_ci<div class="sect1"> 1087e5c31af7Sopenharmony_ci<h2 id="preamble"><a class="anchor" href="#preamble"></a>1. Preamble</h2> 1088e5c31af7Sopenharmony_ci<div class="sectionbody"> 1089e5c31af7Sopenharmony_ci<div class="paragraph"> 1090e5c31af7Sopenharmony_ci<p>Copyright 2014-2024 The Khronos Group Inc.</p> 1091e5c31af7Sopenharmony_ci</div> 1092e5c31af7Sopenharmony_ci<div class="paragraph"> 1093e5c31af7Sopenharmony_ci<p>This Specification is protected by copyright laws and contains material 1094e5c31af7Sopenharmony_ciproprietary to Khronos. Except as described by these terms, it or any 1095e5c31af7Sopenharmony_cicomponents may not be reproduced, republished, distributed, transmitted, 1096e5c31af7Sopenharmony_cidisplayed, broadcast or otherwise exploited in any manner without the 1097e5c31af7Sopenharmony_ciexpress prior written permission of Khronos.</p> 1098e5c31af7Sopenharmony_ci</div> 1099e5c31af7Sopenharmony_ci<div class="paragraph"> 1100e5c31af7Sopenharmony_ci<p>Khronos grants a conditional copyright license to use and reproduce the 1101e5c31af7Sopenharmony_ciunmodified Specification for any purpose, without fee or royalty, EXCEPT no 1102e5c31af7Sopenharmony_cilicenses to any patent, trademark or other intellectual property rights are 1103e5c31af7Sopenharmony_cigranted under these terms.</p> 1104e5c31af7Sopenharmony_ci</div> 1105e5c31af7Sopenharmony_ci<div class="paragraph"> 1106e5c31af7Sopenharmony_ci<p>Khronos makes no, and expressly disclaims any, representations or 1107e5c31af7Sopenharmony_ciwarranties, express or implied, regarding this Specification, including, 1108e5c31af7Sopenharmony_ciwithout limitation: merchantability, fitness for a particular purpose, 1109e5c31af7Sopenharmony_cinon-infringement of any intellectual property, correctness, accuracy, 1110e5c31af7Sopenharmony_cicompleteness, timeliness, and reliability. Under no circumstances will 1111e5c31af7Sopenharmony_ciKhronos, or any of its Promoters, Contributors or Members, or their 1112e5c31af7Sopenharmony_cirespective partners, officers, directors, employees, agents or 1113e5c31af7Sopenharmony_cirepresentatives be liable for any damages, whether direct, indirect, special 1114e5c31af7Sopenharmony_cior consequential damages for lost revenues, lost profits, or otherwise, 1115e5c31af7Sopenharmony_ciarising from or in connection with these materials.</p> 1116e5c31af7Sopenharmony_ci</div> 1117e5c31af7Sopenharmony_ci<div class="paragraph"> 1118e5c31af7Sopenharmony_ci<p>This document contains extensions which are not ratified by Khronos, and as 1119e5c31af7Sopenharmony_cisuch is not a ratified Specification, though it contains text from (and is a 1120e5c31af7Sopenharmony_cisuperset of) the ratified Vulkan Specification. The ratified versions 1121e5c31af7Sopenharmony_ciof the Vulkan Specification can be found at <a href="https://registry.khronos.org/vulkan/specs/1.3/html/vkspec.html" class="bare">https://registry.khronos.org/vulkan/specs/1.3/html/vkspec.html</a> (core only) 1122e5c31af7Sopenharmony_ciand <a href="https://registry.khronos.org/vulkan/specs/1.3-khr-extensions/html/vkspec.html" class="bare">https://registry.khronos.org/vulkan/specs/1.3-khr-extensions/html/vkspec.html</a> (core with all ratified extensions) 1123e5c31af7Sopenharmony_ci.</p> 1124e5c31af7Sopenharmony_ci</div> 1125e5c31af7Sopenharmony_ci<div class="paragraph"> 1126e5c31af7Sopenharmony_ci<p>This Specification contains substantially unmodified functionality from, and 1127e5c31af7Sopenharmony_ciis a successor to, Khronos specifications including 1128e5c31af7Sopenharmony_ciOpenGL, OpenGL ES and OpenCL.</p> 1129e5c31af7Sopenharmony_ci</div> 1130e5c31af7Sopenharmony_ci<div class="paragraph"> 1131e5c31af7Sopenharmony_ci<p>The Khronos Intellectual Property Rights Policy defines the terms 'Scope', 1132e5c31af7Sopenharmony_ci'Compliant Portion', and 'Necessary Patent Claims'.</p> 1133e5c31af7Sopenharmony_ci</div> 1134e5c31af7Sopenharmony_ci<div class="paragraph"> 1135e5c31af7Sopenharmony_ci<p>Some parts of this Specification are purely informative and so are EXCLUDED 1136e5c31af7Sopenharmony_cithe Scope of this Specification. The <a href="#introduction-conventions">[introduction-conventions]</a> section of 1137e5c31af7Sopenharmony_cithe <a href="#introduction">[introduction]</a> defines how these parts of the Specification are 1138e5c31af7Sopenharmony_ciidentified.</p> 1139e5c31af7Sopenharmony_ci</div> 1140e5c31af7Sopenharmony_ci<div class="paragraph"> 1141e5c31af7Sopenharmony_ci<p>Where this Specification uses <a href="#introduction-technical-terminology">technical terminology</a>, defined in the <a href="#glossary">Glossary</a> or otherwise, 1142e5c31af7Sopenharmony_cithat refer to enabling technologies that are not expressly set forth in this 1143e5c31af7Sopenharmony_ciSpecification, those enabling technologies are EXCLUDED from the Scope of 1144e5c31af7Sopenharmony_cithis Specification. For clarity, enabling technologies not disclosed with 1145e5c31af7Sopenharmony_ciparticularity in this Specification (e.g. semiconductor manufacturing 1146e5c31af7Sopenharmony_citechnology, hardware architecture, processor architecture or 1147e5c31af7Sopenharmony_cimicroarchitecture, memory architecture, compiler technology, object oriented 1148e5c31af7Sopenharmony_citechnology, basic operating system technology, compression technology, 1149e5c31af7Sopenharmony_cialgorithms, and so on) are NOT to be considered expressly set forth; only 1150e5c31af7Sopenharmony_cithose application program interfaces and data structures disclosed with 1151e5c31af7Sopenharmony_ciparticularity are included in the Scope of this Specification.</p> 1152e5c31af7Sopenharmony_ci</div> 1153e5c31af7Sopenharmony_ci<div class="paragraph"> 1154e5c31af7Sopenharmony_ci<p>For purposes of the Khronos Intellectual Property Rights Policy as it 1155e5c31af7Sopenharmony_cirelates to the definition of Necessary Patent Claims, all recommended or 1156e5c31af7Sopenharmony_cioptional features, behaviors and functionality set forth in this 1157e5c31af7Sopenharmony_ciSpecification, if implemented, are considered to be included as Compliant 1158e5c31af7Sopenharmony_ciPortions.</p> 1159e5c31af7Sopenharmony_ci</div> 1160e5c31af7Sopenharmony_ci<div class="paragraph"> 1161e5c31af7Sopenharmony_ci<p>Where this Specification identifies specific sections of external 1162e5c31af7Sopenharmony_cireferences, only those specifically identified sections define 1163e5c31af7Sopenharmony_ci<a href="#introduction-normative-references">normative</a> 1164e5c31af7Sopenharmony_cifunctionality. The Khronos Intellectual Property Rights Policy excludes 1165e5c31af7Sopenharmony_ciexternal references to materials and associated enabling technology not 1166e5c31af7Sopenharmony_cicreated by Khronos from the Scope of this Specification, and any licenses 1167e5c31af7Sopenharmony_cithat may be required to implement such referenced materials and associated 1168e5c31af7Sopenharmony_citechnologies must be obtained separately and may involve royalty payments.</p> 1169e5c31af7Sopenharmony_ci</div> 1170e5c31af7Sopenharmony_ci<div class="paragraph"> 1171e5c31af7Sopenharmony_ci<p>Khronos and Vulkan are registered trademarks, and SPIR-V is a trademark of 1172e5c31af7Sopenharmony_ciThe Khronos Group Inc. OpenCL is a trademark of Apple Inc., used under 1173e5c31af7Sopenharmony_cilicense by Khronos. OpenGL is a registered trademark and the OpenGL ES logo 1174e5c31af7Sopenharmony_ciis a trademark of Hewlett Packard Enterprise, used under license by Khronos. 1175e5c31af7Sopenharmony_ciASTC is a trademark of ARM Holdings PLC. All other product names, 1176e5c31af7Sopenharmony_citrademarks, and/or company names are used solely for identification and 1177e5c31af7Sopenharmony_cibelong to their respective owners.</p> 1178e5c31af7Sopenharmony_ci</div> 1179e5c31af7Sopenharmony_ci</div> 1180e5c31af7Sopenharmony_ci</div> 1181e5c31af7Sopenharmony_ci<div class="sect1"> 1182e5c31af7Sopenharmony_ci<h2 id="lorem"><a class="anchor" href="#lorem"></a>2. Lorem</h2> 1183e5c31af7Sopenharmony_ci<div class="sectionbody"> 1184e5c31af7Sopenharmony_ci<div class="paragraph"> 1185e5c31af7Sopenharmony_ci<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor 1186e5c31af7Sopenharmony_ciincididunt ut labore et dolore magna aliqua. Congue eu consequat ac felis donec 1187e5c31af7Sopenharmony_ciet odio. Enim nec dui nunc mattis enim. Nulla facilisi etiam dignissim diam 1188e5c31af7Sopenharmony_ciquis enim lobortis scelerisque fermentum. Nam libero justo laoreet sit amet. 1189e5c31af7Sopenharmony_ciLacus luctus accumsan tortor posuere. Ultrices tincidunt arcu non sodales. Ut 1190e5c31af7Sopenharmony_cienim blandit volutpat maecenas volutpat blandit aliquam etiam. Sed id semper 1191e5c31af7Sopenharmony_cirisus in. Natoque penatibus et magnis dis parturient montes.</p> 1192e5c31af7Sopenharmony_ci</div> 1193e5c31af7Sopenharmony_ci<div class="paragraph"> 1194e5c31af7Sopenharmony_ci<p>Vestibulum morbi blandit cursus risus at ultrices mi tempus imperdiet. 1195e5c31af7Sopenharmony_ciDignissim cras tincidunt lobortis feugiat vivamus at augue eget arcu. Ultricies 1196e5c31af7Sopenharmony_cimi eget mauris pharetra. Ac turpis egestas maecenas pharetra convallis posuere 1197e5c31af7Sopenharmony_cimorbi leo urna. Cras sed felis eget velit aliquet. Sit amet mauris commodo quis 1198e5c31af7Sopenharmony_ciimperdiet. Malesuada pellentesque elit eget gravida cum sociis natoque. 1199e5c31af7Sopenharmony_ciFaucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae.</p> 1200e5c31af7Sopenharmony_ci</div> 1201e5c31af7Sopenharmony_ci<div class="sect2"> 1202e5c31af7Sopenharmony_ci<h3 id="lorem-subchapter"><a class="anchor" href="#lorem-subchapter"></a>2.1. Lorem Subchapter</h3> 1203e5c31af7Sopenharmony_ci<div class="openblock"> 1204e5c31af7Sopenharmony_ci<div class="content"> 1205e5c31af7Sopenharmony_ci<div class="paragraph"> 1206e5c31af7Sopenharmony_ci<p>Sed risus pretium quam vulputate dignissim suspendisse in est ante:</p> 1207e5c31af7Sopenharmony_ci</div> 1208e5c31af7Sopenharmony_ci<div id="vkCmdCopyBufferToImage2" class="listingblock"> 1209e5c31af7Sopenharmony_ci<div class="content"> 1210e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_VERSION_1_3</span> 1211e5c31af7Sopenharmony_ci<span class="kt">void</span> <span class="nf">vkCmdCopyBufferToImage2</span><span class="p">(</span> 1212e5c31af7Sopenharmony_ci <span class="n">VkCommandBuffer</span> <span class="n">commandBuffer</span><span class="p">,</span> 1213e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="n">VkCopyBufferToImageInfo2</span><span class="o">*</span> <span class="n">pCopyBufferToImageInfo</span><span class="p">);</span></code></pre> 1214e5c31af7Sopenharmony_ci</div> 1215e5c31af7Sopenharmony_ci</div> 1216e5c31af7Sopenharmony_ci<div class="paragraph"> 1217e5c31af7Sopenharmony_ci<p>or the equivalent command</p> 1218e5c31af7Sopenharmony_ci</div> 1219e5c31af7Sopenharmony_ci<div id="vkCmdCopyBufferToImage2KHR" class="listingblock"> 1220e5c31af7Sopenharmony_ci<div class="content"> 1221e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_KHR_copy_commands2</span> 1222e5c31af7Sopenharmony_ci<span class="kt">void</span> <span class="nf">vkCmdCopyBufferToImage2KHR</span><span class="p">(</span> 1223e5c31af7Sopenharmony_ci <span class="n">VkCommandBuffer</span> <span class="n">commandBuffer</span><span class="p">,</span> 1224e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="n">VkCopyBufferToImageInfo2</span><span class="o">*</span> <span class="n">pCopyBufferToImageInfo</span><span class="p">);</span></code></pre> 1225e5c31af7Sopenharmony_ci</div> 1226e5c31af7Sopenharmony_ci</div> 1227e5c31af7Sopenharmony_ci<div class="ulist"> 1228e5c31af7Sopenharmony_ci<ul> 1229e5c31af7Sopenharmony_ci<li> 1230e5c31af7Sopenharmony_ci<p><code>commandBuffer</code> Mauris commodo quis imperdiet massa tincidunt nunc pulvinar.</p> 1231e5c31af7Sopenharmony_ci</li> 1232e5c31af7Sopenharmony_ci<li> 1233e5c31af7Sopenharmony_ci<p><code>pCopyBufferToImageInfo</code> Odio morbi quis commodo odio aenean sed <a href="#VkCopyBufferToImageInfo2">VkCopyBufferToImageInfo2</a>.</p> 1234e5c31af7Sopenharmony_ci</li> 1235e5c31af7Sopenharmony_ci</ul> 1236e5c31af7Sopenharmony_ci</div> 1237e5c31af7Sopenharmony_ci<div class="paragraph"> 1238e5c31af7Sopenharmony_ci<p>Ac tortor dignissim convallis aenean et tortor. Amet porttitor eget dolor morbi 1239e5c31af7Sopenharmony_cinon arcu. Consequat interdum varius sit amet. Tempus egestas sed sed risus 1240e5c31af7Sopenharmony_cipretium quam. Gravida in fermentum et sollicitudin ac orci phasellus egestas. 1241e5c31af7Sopenharmony_ciNulla facilisi etiam dignissim diam quis enim lobortis scelerisque fermentum. 1242e5c31af7Sopenharmony_ciTempus quam pellentesque nec nam aliquam. A pellentesque sit amet porttitor 1243e5c31af7Sopenharmony_cieget. Viverra justo nec ultrices dui sapien eget mi. Nullam vehicula ipsum a 1244e5c31af7Sopenharmony_ciarcu. Amet volutpat consequat mauris nunc congue nisi. Tincidunt arcu non 1245e5c31af7Sopenharmony_cisodales neque.</p> 1246e5c31af7Sopenharmony_ci</div> 1247e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1248e5c31af7Sopenharmony_ci<div class="content"> 1249e5c31af7Sopenharmony_ci<div class="title">Valid Usage</div> 1250e5c31af7Sopenharmony_ci<div class="ulist"> 1251e5c31af7Sopenharmony_ci<ul> 1252e5c31af7Sopenharmony_ci<li> 1253e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-commandBuffer-91828" href="#VUID-vkCmdCopyBufferToImage2-commandBuffer-91828"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-commandBuffer-91828</span><br> 1254e5c31af7Sopenharmony_ci 1255e5c31af7Sopenharmony_ciIf <code>commandBuffer</code> is an unprotected command buffer and 1256e5c31af7Sopenharmony_ci<a href="#limits-protectedNoFault"><code>protectedNoFault</code></a> is not supported, 1257e5c31af7Sopenharmony_ci<code>srcBuffer</code> <strong class="purple">must</strong> not be a protected buffer</p> 1258e5c31af7Sopenharmony_ci</li> 1259e5c31af7Sopenharmony_ci<li> 1260e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-commandBuffer-91829" href="#VUID-vkCmdCopyBufferToImage2-commandBuffer-91829"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-commandBuffer-91829</span><br> 1261e5c31af7Sopenharmony_ci 1262e5c31af7Sopenharmony_ciIf <code>commandBuffer</code> is an unprotected command buffer and 1263e5c31af7Sopenharmony_ci<a href="#limits-protectedNoFault"><code>protectedNoFault</code></a> is not supported, 1264e5c31af7Sopenharmony_ci<code>dstImage</code> <strong class="purple">must</strong> not be a protected image</p> 1265e5c31af7Sopenharmony_ci</li> 1266e5c31af7Sopenharmony_ci<li> 1267e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-commandBuffer-91830" href="#VUID-vkCmdCopyBufferToImage2-commandBuffer-91830"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-commandBuffer-91830</span><br> 1268e5c31af7Sopenharmony_ci 1269e5c31af7Sopenharmony_ciIf <code>commandBuffer</code> is a protected command buffer and 1270e5c31af7Sopenharmony_ci<a href="#limits-protectedNoFault"><code>protectedNoFault</code></a> is not supported, 1271e5c31af7Sopenharmony_ci<code>dstImage</code> <strong class="purple">must</strong> not be an unprotected image</p> 1272e5c31af7Sopenharmony_ci</li> 1273e5c31af7Sopenharmony_ci<li> 1274e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-commandBuffer-97737" href="#VUID-vkCmdCopyBufferToImage2-commandBuffer-97737"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-commandBuffer-97737</span><br> 1275e5c31af7Sopenharmony_ci 1276e5c31af7Sopenharmony_ciIf the queue family used to create the <a href="#VkCommandPool">VkCommandPool</a> which 1277e5c31af7Sopenharmony_ci<code>commandBuffer</code> was allocated from does not support 1278e5c31af7Sopenharmony_ci<code>VK_QUEUE_GRAPHICS_BIT</code> or <code>VK_QUEUE_COMPUTE_BIT</code>, the 1279e5c31af7Sopenharmony_ci<code>bufferOffset</code> member of any element of <code>pCopyBufferToImageInfo->pRegions</code> <strong class="purple">must</strong> be a 1280e5c31af7Sopenharmony_cimultiple of <code>4</code></p> 1281e5c31af7Sopenharmony_ci</li> 1282e5c31af7Sopenharmony_ci<li> 1283e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-imageOffset-97738" href="#VUID-vkCmdCopyBufferToImage2-imageOffset-97738"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-imageOffset-97738</span><br> 1284e5c31af7Sopenharmony_ci 1285e5c31af7Sopenharmony_ciThe <code>imageOffset</code> and <code>imageExtent</code> members of each element of 1286e5c31af7Sopenharmony_ci<code>pCopyBufferToImageInfo->pRegions</code> <strong class="purple">must</strong> respect the image transfer granularity requirements 1287e5c31af7Sopenharmony_ciof <code>commandBuffer</code>’s command pool’s queue family, as described in 1288e5c31af7Sopenharmony_ci<a href="#VkQueueFamilyProperties">VkQueueFamilyProperties</a></p> 1289e5c31af7Sopenharmony_ci</li> 1290e5c31af7Sopenharmony_ci<li> 1291e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-commandBuffer-97739" href="#VUID-vkCmdCopyBufferToImage2-commandBuffer-97739"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-commandBuffer-97739</span><br> 1292e5c31af7Sopenharmony_ci 1293e5c31af7Sopenharmony_ciIf the queue family used to create the <a href="#VkCommandPool">VkCommandPool</a> which 1294e5c31af7Sopenharmony_ci<code>commandBuffer</code> was allocated from does not support 1295e5c31af7Sopenharmony_ci<code>VK_QUEUE_GRAPHICS_BIT</code>, for each element of <code>pCopyBufferToImageInfo->pRegions</code>, the 1296e5c31af7Sopenharmony_ci<code>aspectMask</code> member of <code>imageSubresource</code> <strong class="purple">must</strong> not be 1297e5c31af7Sopenharmony_ci<code>VK_IMAGE_ASPECT_DEPTH_BIT</code> or <code>VK_IMAGE_ASPECT_STENCIL_BIT</code></p> 1298e5c31af7Sopenharmony_ci</li> 1299e5c31af7Sopenharmony_ci</ul> 1300e5c31af7Sopenharmony_ci</div> 1301e5c31af7Sopenharmony_ci</div> 1302e5c31af7Sopenharmony_ci</div> 1303e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1304e5c31af7Sopenharmony_ci<div class="content"> 1305e5c31af7Sopenharmony_ci<div class="title">Valid Usage (Implicit)</div> 1306e5c31af7Sopenharmony_ci<div class="ulist"> 1307e5c31af7Sopenharmony_ci<ul> 1308e5c31af7Sopenharmony_ci<li> 1309e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-commandBuffer-parameter" href="#VUID-vkCmdCopyBufferToImage2-commandBuffer-parameter"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-commandBuffer-parameter</span><br> 1310e5c31af7Sopenharmony_ci <code>commandBuffer</code> <strong class="purple">must</strong> be a valid <a href="#VkCommandBuffer">VkCommandBuffer</a> handle</p> 1311e5c31af7Sopenharmony_ci</li> 1312e5c31af7Sopenharmony_ci<li> 1313e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-pCopyBufferToImageInfo-parameter" href="#VUID-vkCmdCopyBufferToImage2-pCopyBufferToImageInfo-parameter"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-pCopyBufferToImageInfo-parameter</span><br> 1314e5c31af7Sopenharmony_ci <code>pCopyBufferToImageInfo</code> <strong class="purple">must</strong> be a valid pointer to a valid <a href="#VkCopyBufferToImageInfo2">VkCopyBufferToImageInfo2</a> structure</p> 1315e5c31af7Sopenharmony_ci</li> 1316e5c31af7Sopenharmony_ci<li> 1317e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-commandBuffer-recording" href="#VUID-vkCmdCopyBufferToImage2-commandBuffer-recording"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-commandBuffer-recording</span><br> 1318e5c31af7Sopenharmony_ci <code>commandBuffer</code> <strong class="purple">must</strong> be in the <a href="#commandbuffers-lifecycle">recording state</a></p> 1319e5c31af7Sopenharmony_ci</li> 1320e5c31af7Sopenharmony_ci<li> 1321e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-commandBuffer-cmdpool" href="#VUID-vkCmdCopyBufferToImage2-commandBuffer-cmdpool"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-commandBuffer-cmdpool</span><br> 1322e5c31af7Sopenharmony_ci The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class="purple">must</strong> support transfer, graphics, or compute operations</p> 1323e5c31af7Sopenharmony_ci</li> 1324e5c31af7Sopenharmony_ci<li> 1325e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-renderpass" href="#VUID-vkCmdCopyBufferToImage2-renderpass"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-renderpass</span><br> 1326e5c31af7Sopenharmony_ci This command <strong class="purple">must</strong> only be called outside of a render pass instance</p> 1327e5c31af7Sopenharmony_ci</li> 1328e5c31af7Sopenharmony_ci<li> 1329e5c31af7Sopenharmony_ci<p><a id="VUID-vkCmdCopyBufferToImage2-videocoding" href="#VUID-vkCmdCopyBufferToImage2-videocoding"></a> <span class="vuid">VUID-vkCmdCopyBufferToImage2-videocoding</span><br> 1330e5c31af7Sopenharmony_ci This command <strong class="purple">must</strong> only be called outside of a video coding scope</p> 1331e5c31af7Sopenharmony_ci</li> 1332e5c31af7Sopenharmony_ci</ul> 1333e5c31af7Sopenharmony_ci</div> 1334e5c31af7Sopenharmony_ci</div> 1335e5c31af7Sopenharmony_ci</div> 1336e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1337e5c31af7Sopenharmony_ci<div class="content"> 1338e5c31af7Sopenharmony_ci<div class="title">Host Synchronization</div> 1339e5c31af7Sopenharmony_ci<div class="ulist"> 1340e5c31af7Sopenharmony_ci<ul> 1341e5c31af7Sopenharmony_ci<li> 1342e5c31af7Sopenharmony_ci<p>Host access to <code>commandBuffer</code> <strong class="purple">must</strong> be externally synchronized</p> 1343e5c31af7Sopenharmony_ci</li> 1344e5c31af7Sopenharmony_ci<li> 1345e5c31af7Sopenharmony_ci<p>Host access to the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class="purple">must</strong> be externally synchronized</p> 1346e5c31af7Sopenharmony_ci</li> 1347e5c31af7Sopenharmony_ci</ul> 1348e5c31af7Sopenharmony_ci</div> 1349e5c31af7Sopenharmony_ci</div> 1350e5c31af7Sopenharmony_ci</div> 1351e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1352e5c31af7Sopenharmony_ci<div class="content"> 1353e5c31af7Sopenharmony_ci<div class="title">Command Properties</div> 1354e5c31af7Sopenharmony_ci<table class="tableblock frame-all grid-all stretch"> 1355e5c31af7Sopenharmony_ci<colgroup> 1356e5c31af7Sopenharmony_ci<col style="width: 20%;"> 1357e5c31af7Sopenharmony_ci<col style="width: 20%;"> 1358e5c31af7Sopenharmony_ci<col style="width: 20%;"> 1359e5c31af7Sopenharmony_ci<col style="width: 20%;"> 1360e5c31af7Sopenharmony_ci<col style="width: 20%;"> 1361e5c31af7Sopenharmony_ci</colgroup> 1362e5c31af7Sopenharmony_ci<thead> 1363e5c31af7Sopenharmony_ci<tr> 1364e5c31af7Sopenharmony_ci<th class="tableblock halign-left valign-top"><a href="#VkCommandBufferLevel">Command Buffer Levels</a></th> 1365e5c31af7Sopenharmony_ci<th class="tableblock halign-left valign-top"><a href="#vkCmdBeginRenderPass">Render Pass Scope</a></th> 1366e5c31af7Sopenharmony_ci<th class="tableblock halign-left valign-top"><a href="#vkCmdBeginVideoCodingKHR">Video Coding Scope</a></th> 1367e5c31af7Sopenharmony_ci<th class="tableblock halign-left valign-top"><a href="#VkQueueFlagBits">Supported Queue Types</a></th> 1368e5c31af7Sopenharmony_ci<th class="tableblock halign-left valign-top"><a href="#fundamentals-queueoperation-command-types">Command Type</a></th> 1369e5c31af7Sopenharmony_ci</tr> 1370e5c31af7Sopenharmony_ci</thead> 1371e5c31af7Sopenharmony_ci<tbody> 1372e5c31af7Sopenharmony_ci<tr> 1373e5c31af7Sopenharmony_ci<td class="tableblock halign-left valign-top"><p class="tableblock">Primary<br> 1374e5c31af7Sopenharmony_ciSecondary</p></td> 1375e5c31af7Sopenharmony_ci<td class="tableblock halign-left valign-top"><p class="tableblock">Outside</p></td> 1376e5c31af7Sopenharmony_ci<td class="tableblock halign-left valign-top"><p class="tableblock">Outside</p></td> 1377e5c31af7Sopenharmony_ci<td class="tableblock halign-left valign-top"><p class="tableblock">Transfer<br> 1378e5c31af7Sopenharmony_ciGraphics<br> 1379e5c31af7Sopenharmony_ciCompute</p></td> 1380e5c31af7Sopenharmony_ci<td class="tableblock halign-left valign-top"><p class="tableblock">Action</p></td> 1381e5c31af7Sopenharmony_ci</tr> 1382e5c31af7Sopenharmony_ci</tbody> 1383e5c31af7Sopenharmony_ci</table> 1384e5c31af7Sopenharmony_ci</div> 1385e5c31af7Sopenharmony_ci</div> 1386e5c31af7Sopenharmony_ci</div> 1387e5c31af7Sopenharmony_ci</div> 1388e5c31af7Sopenharmony_ci<div class="openblock"> 1389e5c31af7Sopenharmony_ci<div class="content"> 1390e5c31af7Sopenharmony_ci<div class="paragraph"> 1391e5c31af7Sopenharmony_ci<p>Sed risus pretium quam vulputate dignissim suspendisse in est ante <code>VkCopyBufferToImageInfo2</code>:</p> 1392e5c31af7Sopenharmony_ci</div> 1393e5c31af7Sopenharmony_ci<div id="VkCopyBufferToImageInfo2" class="listingblock"> 1394e5c31af7Sopenharmony_ci<div class="content"> 1395e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_VERSION_1_3</span> 1396e5c31af7Sopenharmony_ci<span class="k">typedef</span> <span class="k">struct</span> <span class="nc">VkCopyBufferToImageInfo2</span> <span class="p">{</span> 1397e5c31af7Sopenharmony_ci <span class="n">VkStructureType</span> <span class="n">sType</span><span class="p">;</span> 1398e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="kt">void</span><span class="o">*</span> <span class="n">pNext</span><span class="p">;</span> 1399e5c31af7Sopenharmony_ci <span class="n">VkBuffer</span> <span class="n">srcBuffer</span><span class="p">;</span> 1400e5c31af7Sopenharmony_ci <span class="n">VkImage</span> <span class="n">dstImage</span><span class="p">;</span> 1401e5c31af7Sopenharmony_ci <span class="n">VkImageLayout</span> <span class="n">dstImageLayout</span><span class="p">;</span> 1402e5c31af7Sopenharmony_ci <span class="kt">uint32_t</span> <span class="n">regionCount</span><span class="p">;</span> 1403e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="n">VkBufferImageCopy2</span><span class="o">*</span> <span class="n">pRegions</span><span class="p">;</span> 1404e5c31af7Sopenharmony_ci<span class="p">}</span> <span class="n">VkCopyBufferToImageInfo2</span><span class="p">;</span></code></pre> 1405e5c31af7Sopenharmony_ci</div> 1406e5c31af7Sopenharmony_ci</div> 1407e5c31af7Sopenharmony_ci<div class="paragraph"> 1408e5c31af7Sopenharmony_ci<p>or the equivalent</p> 1409e5c31af7Sopenharmony_ci</div> 1410e5c31af7Sopenharmony_ci<div id="VkCopyBufferToImageInfo2KHR" class="listingblock"> 1411e5c31af7Sopenharmony_ci<div class="content"> 1412e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_KHR_copy_commands2</span> 1413e5c31af7Sopenharmony_ci<span class="k">typedef</span> <span class="n">VkCopyBufferToImageInfo2</span> <span class="n">VkCopyBufferToImageInfo2KHR</span><span class="p">;</span></code></pre> 1414e5c31af7Sopenharmony_ci</div> 1415e5c31af7Sopenharmony_ci</div> 1416e5c31af7Sopenharmony_ci<div class="ulist"> 1417e5c31af7Sopenharmony_ci<ul> 1418e5c31af7Sopenharmony_ci<li> 1419e5c31af7Sopenharmony_ci<p><code>sType</code> Natoque penatibus et magnis dis parturient montes nascetur.</p> 1420e5c31af7Sopenharmony_ci</li> 1421e5c31af7Sopenharmony_ci<li> 1422e5c31af7Sopenharmony_ci<p><code>pNext</code> Iaculis eu non diam phasellus vestibulum.</p> 1423e5c31af7Sopenharmony_ci</li> 1424e5c31af7Sopenharmony_ci<li> 1425e5c31af7Sopenharmony_ci<p><code>srcBuffer</code> Consequat nisl vel pretium lectus quam.</p> 1426e5c31af7Sopenharmony_ci</li> 1427e5c31af7Sopenharmony_ci<li> 1428e5c31af7Sopenharmony_ci<p><code>dstImage</code> Euismod in pellentesque massa placerat duis ultricies lacus sed turpis.</p> 1429e5c31af7Sopenharmony_ci</li> 1430e5c31af7Sopenharmony_ci<li> 1431e5c31af7Sopenharmony_ci<p><code>dstImageLayout</code> Ullamcorper eget nulla facilisi etiam dignissim diam quis enim.</p> 1432e5c31af7Sopenharmony_ci</li> 1433e5c31af7Sopenharmony_ci<li> 1434e5c31af7Sopenharmony_ci<p><code>regionCount</code> Vel facilisis volutpat est velit egestas dui.</p> 1435e5c31af7Sopenharmony_ci</li> 1436e5c31af7Sopenharmony_ci<li> 1437e5c31af7Sopenharmony_ci<p><code>pRegions</code> Consequat id porta nibh venenatis cras sed felis.</p> 1438e5c31af7Sopenharmony_ci</li> 1439e5c31af7Sopenharmony_ci</ul> 1440e5c31af7Sopenharmony_ci</div> 1441e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1442e5c31af7Sopenharmony_ci<div class="content"> 1443e5c31af7Sopenharmony_ci<div class="title">Valid Usage</div> 1444e5c31af7Sopenharmony_ci<div class="ulist"> 1445e5c31af7Sopenharmony_ci<ul> 1446e5c31af7Sopenharmony_ci<li> 1447e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-pRegions-94565" href="#VUID-VkCopyBufferToImageInfo2-pRegions-94565"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-pRegions-94565</span><br> 1448e5c31af7Sopenharmony_ci 1449e5c31af7Sopenharmony_ciId velit ut tortor pretium viverra suspendisse potenti <code>pRegions</code> 1450e5c31af7Sopenharmony_cifaucibus in ornare quam viverra orci sagittis eu volutpat 1451e5c31af7Sopenharmony_ci<code>pNext</code> chain 1452e5c31af7Sopenharmony_ci<code>imageSubresource</code> eu facilisis sed <strong class="purple">must</strong> odio morbi quis commodo 1453e5c31af7Sopenharmony_ci<code>dstImage</code></p> 1454e5c31af7Sopenharmony_ci</li> 1455e5c31af7Sopenharmony_ci<li> 1456e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2KHR-pRegions-94554" href="#VUID-VkCopyBufferToImageInfo2KHR-pRegions-94554"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2KHR-pRegions-94554</span><br> 1457e5c31af7Sopenharmony_ci 1458e5c31af7Sopenharmony_ciPharetra magna ac placerat vestibulum lectus mauris <code>pRegions</code> 1459e5c31af7Sopenharmony_ciac felis donec et odio pellentesque diam volutpat commodo sed <code>pNext</code> chain 1460e5c31af7Sopenharmony_ci<strong class="purple">must</strong> malesuada pellentesque elit <a href="#lorem-subchapter">Lorem Subchapter</a> eget gravida cum sociis natoque 1461e5c31af7Sopenharmony_ci<code>dstImage</code></p> 1462e5c31af7Sopenharmony_ci</li> 1463e5c31af7Sopenharmony_ci</ul> 1464e5c31af7Sopenharmony_ci</div> 1465e5c31af7Sopenharmony_ci<div class="ulist"> 1466e5c31af7Sopenharmony_ci<ul> 1467e5c31af7Sopenharmony_ci<li> 1468e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-dstImage-97966" href="#VUID-VkCopyBufferToImageInfo2-dstImage-97966"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-dstImage-97966</span><br> 1469e5c31af7Sopenharmony_ci 1470e5c31af7Sopenharmony_ciIf <code>dstImage</code> is non-sparse then the image or the specified 1471e5c31af7Sopenharmony_ci<em>disjoint</em> plane <strong class="purple">must</strong> be bound completely and contiguously to a single 1472e5c31af7Sopenharmony_ci<code>VkDeviceMemory</code> object</p> 1473e5c31af7Sopenharmony_ci</li> 1474e5c31af7Sopenharmony_ci<li> 1475e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-imageSubresource-97967" href="#VUID-VkCopyBufferToImageInfo2-imageSubresource-97967"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-imageSubresource-97967</span><br> 1476e5c31af7Sopenharmony_ci 1477e5c31af7Sopenharmony_ciThe <code>imageSubresource.mipLevel</code> member of each element of 1478e5c31af7Sopenharmony_ci<code>pRegions</code> <strong class="purple">must</strong> be less than the <code>mipLevels</code> specified in 1479e5c31af7Sopenharmony_ci<a href="#VkImageCreateInfo">VkImageCreateInfo</a> when <code>dstImage</code> was created</p> 1480e5c31af7Sopenharmony_ci</li> 1481e5c31af7Sopenharmony_ci<li> 1482e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-imageSubresource-97968" href="#VUID-VkCopyBufferToImageInfo2-imageSubresource-97968"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-imageSubresource-97968</span><br> 1483e5c31af7Sopenharmony_ci 1484e5c31af7Sopenharmony_ciThe <span class="eq"><code>imageSubresource.baseArrayLayer</code> + 1485e5c31af7Sopenharmony_ci<code>imageSubresource.layerCount</code></span> of each element of <code>pRegions</code> 1486e5c31af7Sopenharmony_ci, if <code>imageSubresource.layerCount</code> is not 1487e5c31af7Sopenharmony_ci<code>VK_REMAINING_ARRAY_LAYERS</code> and <a href="#features-maintenance5"><code>maintenance5</code></a> is not enabled, 1488e5c31af7Sopenharmony_ci<strong class="purple">must</strong> be less than or equal to the <code>arrayLayers</code> specified in 1489e5c31af7Sopenharmony_ci<a href="#VkImageCreateInfo">VkImageCreateInfo</a> when <code>dstImage</code> was created</p> 1490e5c31af7Sopenharmony_ci</li> 1491e5c31af7Sopenharmony_ci<li> 1492e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-dstImage-97969" href="#VUID-VkCopyBufferToImageInfo2-dstImage-97969"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-dstImage-97969</span><br> 1493e5c31af7Sopenharmony_ci 1494e5c31af7Sopenharmony_ci<code>dstImage</code> <strong class="purple">must</strong> not have been created with <code>flags</code> 1495e5c31af7Sopenharmony_cicontaining <code>VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT</code></p> 1496e5c31af7Sopenharmony_ci</li> 1497e5c31af7Sopenharmony_ci</ul> 1498e5c31af7Sopenharmony_ci</div> 1499e5c31af7Sopenharmony_ci<div class="ulist"> 1500e5c31af7Sopenharmony_ci<ul> 1501e5c31af7Sopenharmony_ci<li> 1502e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-bufferRowLength-99101" href="#VUID-VkCopyBufferToImageInfo2-bufferRowLength-99101"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-bufferRowLength-99101</span><br> 1503e5c31af7Sopenharmony_ci 1504e5c31af7Sopenharmony_ci<code>bufferRowLength</code> <strong class="purple">must</strong> be <code>0</code>, or greater than or equal to the 1505e5c31af7Sopenharmony_ci<code>width</code> member of <code>imageExtent</code></p> 1506e5c31af7Sopenharmony_ci</li> 1507e5c31af7Sopenharmony_ci<li> 1508e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-bufferImageHeight-99102" href="#VUID-VkCopyBufferToImageInfo2-bufferImageHeight-99102"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-bufferImageHeight-99102</span><br> 1509e5c31af7Sopenharmony_ci 1510e5c31af7Sopenharmony_ci<code>bufferImageHeight</code> <strong class="purple">must</strong> be <code>0</code>, or greater than or equal to the 1511e5c31af7Sopenharmony_ci<code>height</code> member of <code>imageExtent</code></p> 1512e5c31af7Sopenharmony_ci</li> 1513e5c31af7Sopenharmony_ci<li> 1514e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-aspectMask-99103" href="#VUID-VkCopyBufferToImageInfo2-aspectMask-99103"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-aspectMask-99103</span><br> 1515e5c31af7Sopenharmony_ci 1516e5c31af7Sopenharmony_ciThe <code>aspectMask</code> member of <code>imageSubresource</code> <strong class="purple">must</strong> only have a 1517e5c31af7Sopenharmony_cisingle bit set</p> 1518e5c31af7Sopenharmony_ci</li> 1519e5c31af7Sopenharmony_ci<li> 1520e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-imageExtent-96659" href="#VUID-VkCopyBufferToImageInfo2-imageExtent-96659"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-imageExtent-96659</span><br> 1521e5c31af7Sopenharmony_ci 1522e5c31af7Sopenharmony_ci<code>imageExtent.width</code> <strong class="purple">must</strong> not be 0</p> 1523e5c31af7Sopenharmony_ci</li> 1524e5c31af7Sopenharmony_ci<li> 1525e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-imageExtent-96660" href="#VUID-VkCopyBufferToImageInfo2-imageExtent-96660"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-imageExtent-96660</span><br> 1526e5c31af7Sopenharmony_ci 1527e5c31af7Sopenharmony_ci<code>imageExtent.height</code> <strong class="purple">must</strong> not be 0</p> 1528e5c31af7Sopenharmony_ci</li> 1529e5c31af7Sopenharmony_ci<li> 1530e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-imageExtent-96661" href="#VUID-VkCopyBufferToImageInfo2-imageExtent-96661"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-imageExtent-96661</span><br> 1531e5c31af7Sopenharmony_ci 1532e5c31af7Sopenharmony_ci<code>imageExtent.depth</code> <strong class="purple">must</strong> not be 0</p> 1533e5c31af7Sopenharmony_ci</li> 1534e5c31af7Sopenharmony_ci<li> 1535e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-pRegions-96223" href="#VUID-VkCopyBufferToImageInfo2-pRegions-96223"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-pRegions-96223</span><br> 1536e5c31af7Sopenharmony_ci 1537e5c31af7Sopenharmony_ciId leo in vitae turpis massa sed elementum 1538e5c31af7Sopenharmony_ci<code>imageOffset.x</code> and <span class="eq">(<code>imageExtent.width</code> + 1539e5c31af7Sopenharmony_ci<code>imageOffset.x</code>)</span> <strong class="purple">must</strong> gravida dictum fusce ut placerat orci nulla 1540e5c31af7Sopenharmony_cipellentesque dignissim enim <code>imageSubresource</code> of <code>dstImage</code></p> 1541e5c31af7Sopenharmony_ci</li> 1542e5c31af7Sopenharmony_ci</ul> 1543e5c31af7Sopenharmony_ci</div> 1544e5c31af7Sopenharmony_ci</div> 1545e5c31af7Sopenharmony_ci</div> 1546e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1547e5c31af7Sopenharmony_ci<div class="content"> 1548e5c31af7Sopenharmony_ci<div class="title">Valid Usage (Implicit)</div> 1549e5c31af7Sopenharmony_ci<div class="ulist"> 1550e5c31af7Sopenharmony_ci<ul> 1551e5c31af7Sopenharmony_ci<li> 1552e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-sType-sType" href="#VUID-VkCopyBufferToImageInfo2-sType-sType"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-sType-sType</span><br> 1553e5c31af7Sopenharmony_ci <code>sType</code> <strong class="purple">must</strong> be <code>VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2</code></p> 1554e5c31af7Sopenharmony_ci</li> 1555e5c31af7Sopenharmony_ci<li> 1556e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-pNext-pNext" href="#VUID-VkCopyBufferToImageInfo2-pNext-pNext"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-pNext-pNext</span><br> 1557e5c31af7Sopenharmony_ci <code>pNext</code> <strong class="purple">must</strong> be <code>NULL</code></p> 1558e5c31af7Sopenharmony_ci</li> 1559e5c31af7Sopenharmony_ci<li> 1560e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-srcBuffer-parameter" href="#VUID-VkCopyBufferToImageInfo2-srcBuffer-parameter"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-srcBuffer-parameter</span><br> 1561e5c31af7Sopenharmony_ci <code>srcBuffer</code> <strong class="purple">must</strong> be a valid <a href="#VkBuffer">VkBuffer</a> handle</p> 1562e5c31af7Sopenharmony_ci</li> 1563e5c31af7Sopenharmony_ci<li> 1564e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-dstImage-parameter" href="#VUID-VkCopyBufferToImageInfo2-dstImage-parameter"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-dstImage-parameter</span><br> 1565e5c31af7Sopenharmony_ci <code>dstImage</code> <strong class="purple">must</strong> be a valid <a href="#VkImage">VkImage</a> handle</p> 1566e5c31af7Sopenharmony_ci</li> 1567e5c31af7Sopenharmony_ci<li> 1568e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-dstImageLayout-parameter" href="#VUID-VkCopyBufferToImageInfo2-dstImageLayout-parameter"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-dstImageLayout-parameter</span><br> 1569e5c31af7Sopenharmony_ci <code>dstImageLayout</code> <strong class="purple">must</strong> be a valid <a href="#VkImageLayout">VkImageLayout</a> value</p> 1570e5c31af7Sopenharmony_ci</li> 1571e5c31af7Sopenharmony_ci<li> 1572e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-pRegions-parameter" href="#VUID-VkCopyBufferToImageInfo2-pRegions-parameter"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-pRegions-parameter</span><br> 1573e5c31af7Sopenharmony_ci <code>pRegions</code> <strong class="purple">must</strong> be a valid pointer to an array of <code>regionCount</code> valid <a href="#VkBufferImageCopy2">VkBufferImageCopy2</a> structures</p> 1574e5c31af7Sopenharmony_ci</li> 1575e5c31af7Sopenharmony_ci<li> 1576e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-regionCount-arraylength" href="#VUID-VkCopyBufferToImageInfo2-regionCount-arraylength"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-regionCount-arraylength</span><br> 1577e5c31af7Sopenharmony_ci <code>regionCount</code> <strong class="purple">must</strong> be greater than <code>0</code></p> 1578e5c31af7Sopenharmony_ci</li> 1579e5c31af7Sopenharmony_ci<li> 1580e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyBufferToImageInfo2-commonparent" href="#VUID-VkCopyBufferToImageInfo2-commonparent"></a> <span class="vuid">VUID-VkCopyBufferToImageInfo2-commonparent</span><br> 1581e5c31af7Sopenharmony_ci Both of <code>dstImage</code>, and <code>srcBuffer</code> <strong class="purple">must</strong> have been created, allocated, or retrieved from the same <a href="#VkDevice">VkDevice</a></p> 1582e5c31af7Sopenharmony_ci</li> 1583e5c31af7Sopenharmony_ci</ul> 1584e5c31af7Sopenharmony_ci</div> 1585e5c31af7Sopenharmony_ci</div> 1586e5c31af7Sopenharmony_ci</div> 1587e5c31af7Sopenharmony_ci</div> 1588e5c31af7Sopenharmony_ci</div> 1589e5c31af7Sopenharmony_ci<div class="openblock"> 1590e5c31af7Sopenharmony_ci<div class="content"> 1591e5c31af7Sopenharmony_ci<div class="paragraph"> 1592e5c31af7Sopenharmony_ci<p>Gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim <a href="#vkCmdCopyBufferToImage2">vkCmdCopyBufferToImage2</a>:</p> 1593e5c31af7Sopenharmony_ci</div> 1594e5c31af7Sopenharmony_ci<div id="VkBufferImageCopy2" class="listingblock"> 1595e5c31af7Sopenharmony_ci<div class="content"> 1596e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_VERSION_1_3</span> 1597e5c31af7Sopenharmony_ci<span class="k">typedef</span> <span class="k">struct</span> <span class="nc">VkBufferImageCopy2</span> <span class="p">{</span> 1598e5c31af7Sopenharmony_ci <span class="n">VkStructureType</span> <span class="n">sType</span><span class="p">;</span> 1599e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="kt">void</span><span class="o">*</span> <span class="n">pNext</span><span class="p">;</span> 1600e5c31af7Sopenharmony_ci <span class="n">VkDeviceSize</span> <span class="n">bufferOffset</span><span class="p">;</span> 1601e5c31af7Sopenharmony_ci <span class="kt">uint32_t</span> <span class="n">bufferRowLength</span><span class="p">;</span> 1602e5c31af7Sopenharmony_ci <span class="kt">uint32_t</span> <span class="n">bufferImageHeight</span><span class="p">;</span> 1603e5c31af7Sopenharmony_ci <span class="n">VkImageSubresourceLayers</span> <span class="n">imageSubresource</span><span class="p">;</span> 1604e5c31af7Sopenharmony_ci <span class="n">VkOffset3D</span> <span class="n">imageOffset</span><span class="p">;</span> 1605e5c31af7Sopenharmony_ci <span class="n">VkExtent3D</span> <span class="n">imageExtent</span><span class="p">;</span> 1606e5c31af7Sopenharmony_ci<span class="p">}</span> <span class="n">VkBufferImageCopy2</span><span class="p">;</span></code></pre> 1607e5c31af7Sopenharmony_ci</div> 1608e5c31af7Sopenharmony_ci</div> 1609e5c31af7Sopenharmony_ci<div class="paragraph"> 1610e5c31af7Sopenharmony_ci<p>or the equivalent</p> 1611e5c31af7Sopenharmony_ci</div> 1612e5c31af7Sopenharmony_ci<div id="VkBufferImageCopy2KHR" class="listingblock"> 1613e5c31af7Sopenharmony_ci<div class="content"> 1614e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_KHR_copy_commands2</span> 1615e5c31af7Sopenharmony_ci<span class="k">typedef</span> <span class="n">VkBufferImageCopy2</span> <span class="n">VkBufferImageCopy2KHR</span><span class="p">;</span></code></pre> 1616e5c31af7Sopenharmony_ci</div> 1617e5c31af7Sopenharmony_ci</div> 1618e5c31af7Sopenharmony_ci<div class="ulist"> 1619e5c31af7Sopenharmony_ci<ul> 1620e5c31af7Sopenharmony_ci<li> 1621e5c31af7Sopenharmony_ci<p><code>sType</code> Tristique senectus et netus et malesuada.</p> 1622e5c31af7Sopenharmony_ci</li> 1623e5c31af7Sopenharmony_ci<li> 1624e5c31af7Sopenharmony_ci<p><code>pNext</code> Tempor commodo ullamcorper a lacus vestibulum sed arcu.</p> 1625e5c31af7Sopenharmony_ci</li> 1626e5c31af7Sopenharmony_ci<li> 1627e5c31af7Sopenharmony_ci<p><code>bufferOffset</code> Tellus in metus vulputate eu scelerisque. Lectus sit amet est placerat in.</p> 1628e5c31af7Sopenharmony_ci</li> 1629e5c31af7Sopenharmony_ci<li> 1630e5c31af7Sopenharmony_ci<p><code>bufferRowLength</code> and <code>bufferImageHeight</code> Quam adipiscing vitae 1631e5c31af7Sopenharmony_ciproin sagittis. Mattis pellentesque id nibh tortor id aliquet lectus proin 1632e5c31af7Sopenharmony_cinibh <code>imageExtent</code>.</p> 1633e5c31af7Sopenharmony_ci</li> 1634e5c31af7Sopenharmony_ci<li> 1635e5c31af7Sopenharmony_ci<p><code>imageSubresource</code> Sociis natoque penatibus et magnis dis parturient montes nascetur.</p> 1636e5c31af7Sopenharmony_ci</li> 1637e5c31af7Sopenharmony_ci<li> 1638e5c31af7Sopenharmony_ci<p><code>imageOffset</code> Lobortis mattis aliquam faucibus purus in massa tempor nec.</p> 1639e5c31af7Sopenharmony_ci</li> 1640e5c31af7Sopenharmony_ci<li> 1641e5c31af7Sopenharmony_ci<p><code>imageExtent</code> Ut ornare lectus sit amet est placerat in.</p> 1642e5c31af7Sopenharmony_ci</li> 1643e5c31af7Sopenharmony_ci</ul> 1644e5c31af7Sopenharmony_ci</div> 1645e5c31af7Sopenharmony_ci<div class="paragraph"> 1646e5c31af7Sopenharmony_ci<p>Integer quis auctor elit sed vulputate mi sit amet mauris. Ultrices sagittis 1647e5c31af7Sopenharmony_ciorci a scelerisque purus semper eget duis.</p> 1648e5c31af7Sopenharmony_ci</div> 1649e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1650e5c31af7Sopenharmony_ci<div class="content"> 1651e5c31af7Sopenharmony_ci<div class="title">Valid Usage</div> 1652e5c31af7Sopenharmony_ci<div class="ulist"> 1653e5c31af7Sopenharmony_ci<ul> 1654e5c31af7Sopenharmony_ci<li> 1655e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-bufferRowLength-99101" href="#VUID-VkBufferImageCopy2-bufferRowLength-99101"></a> <span class="vuid">VUID-VkBufferImageCopy2-bufferRowLength-99101</span><br> 1656e5c31af7Sopenharmony_ci 1657e5c31af7Sopenharmony_ci<code>bufferRowLength</code> <strong class="purple">must</strong> be <code>0</code>, or greater than or equal to the 1658e5c31af7Sopenharmony_ci<code>width</code> member of <code>imageExtent</code></p> 1659e5c31af7Sopenharmony_ci</li> 1660e5c31af7Sopenharmony_ci<li> 1661e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-bufferImageHeight-99102" href="#VUID-VkBufferImageCopy2-bufferImageHeight-99102"></a> <span class="vuid">VUID-VkBufferImageCopy2-bufferImageHeight-99102</span><br> 1662e5c31af7Sopenharmony_ci 1663e5c31af7Sopenharmony_ci<code>bufferImageHeight</code> <strong class="purple">must</strong> be <code>0</code>, or greater than or equal to the 1664e5c31af7Sopenharmony_ci<code>height</code> member of <code>imageExtent</code></p> 1665e5c31af7Sopenharmony_ci</li> 1666e5c31af7Sopenharmony_ci<li> 1667e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-aspectMask-99103" href="#VUID-VkBufferImageCopy2-aspectMask-99103"></a> <span class="vuid">VUID-VkBufferImageCopy2-aspectMask-99103</span><br> 1668e5c31af7Sopenharmony_ci 1669e5c31af7Sopenharmony_ciThe <code>aspectMask</code> member of <code>imageSubresource</code> <strong class="purple">must</strong> only have a 1670e5c31af7Sopenharmony_cisingle bit set</p> 1671e5c31af7Sopenharmony_ci</li> 1672e5c31af7Sopenharmony_ci<li> 1673e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-imageExtent-96659" href="#VUID-VkBufferImageCopy2-imageExtent-96659"></a> <span class="vuid">VUID-VkBufferImageCopy2-imageExtent-96659</span><br> 1674e5c31af7Sopenharmony_ci 1675e5c31af7Sopenharmony_ci<code>imageExtent.width</code> <strong class="purple">must</strong> not be 0</p> 1676e5c31af7Sopenharmony_ci</li> 1677e5c31af7Sopenharmony_ci<li> 1678e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-imageExtent-96660" href="#VUID-VkBufferImageCopy2-imageExtent-96660"></a> <span class="vuid">VUID-VkBufferImageCopy2-imageExtent-96660</span><br> 1679e5c31af7Sopenharmony_ci 1680e5c31af7Sopenharmony_ci<code>imageExtent.height</code> <strong class="purple">must</strong> not be 0</p> 1681e5c31af7Sopenharmony_ci</li> 1682e5c31af7Sopenharmony_ci<li> 1683e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-imageExtent-96661" href="#VUID-VkBufferImageCopy2-imageExtent-96661"></a> <span class="vuid">VUID-VkBufferImageCopy2-imageExtent-96661</span><br> 1684e5c31af7Sopenharmony_ci 1685e5c31af7Sopenharmony_ci<code>imageExtent.depth</code> <strong class="purple">must</strong> not be 0</p> 1686e5c31af7Sopenharmony_ci</li> 1687e5c31af7Sopenharmony_ci</ul> 1688e5c31af7Sopenharmony_ci</div> 1689e5c31af7Sopenharmony_ci</div> 1690e5c31af7Sopenharmony_ci</div> 1691e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1692e5c31af7Sopenharmony_ci<div class="content"> 1693e5c31af7Sopenharmony_ci<div class="title">Valid Usage (Implicit)</div> 1694e5c31af7Sopenharmony_ci<div class="ulist"> 1695e5c31af7Sopenharmony_ci<ul> 1696e5c31af7Sopenharmony_ci<li> 1697e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-sType-sType" href="#VUID-VkBufferImageCopy2-sType-sType"></a> <span class="vuid">VUID-VkBufferImageCopy2-sType-sType</span><br> 1698e5c31af7Sopenharmony_ci <code>sType</code> <strong class="purple">must</strong> be <code>VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2</code></p> 1699e5c31af7Sopenharmony_ci</li> 1700e5c31af7Sopenharmony_ci<li> 1701e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-pNext-pNext" href="#VUID-VkBufferImageCopy2-pNext-pNext"></a> <span class="vuid">VUID-VkBufferImageCopy2-pNext-pNext</span><br> 1702e5c31af7Sopenharmony_ci <code>pNext</code> <strong class="purple">must</strong> be <code>NULL</code> or a pointer to a valid instance of <a href="#VkCopyCommandTransformInfoQCOM">VkCopyCommandTransformInfoQCOM</a></p> 1703e5c31af7Sopenharmony_ci</li> 1704e5c31af7Sopenharmony_ci<li> 1705e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-sType-unique" href="#VUID-VkBufferImageCopy2-sType-unique"></a> <span class="vuid">VUID-VkBufferImageCopy2-sType-unique</span><br> 1706e5c31af7Sopenharmony_ci The <code>sType</code> value of each struct in the <code>pNext</code> chain <strong class="purple">must</strong> be unique</p> 1707e5c31af7Sopenharmony_ci</li> 1708e5c31af7Sopenharmony_ci<li> 1709e5c31af7Sopenharmony_ci<p><a id="VUID-VkBufferImageCopy2-imageSubresource-parameter" href="#VUID-VkBufferImageCopy2-imageSubresource-parameter"></a> <span class="vuid">VUID-VkBufferImageCopy2-imageSubresource-parameter</span><br> 1710e5c31af7Sopenharmony_ci <code>imageSubresource</code> <strong class="purple">must</strong> be a valid <a href="#VkImageSubresourceLayers">VkImageSubresourceLayers</a> structure</p> 1711e5c31af7Sopenharmony_ci</li> 1712e5c31af7Sopenharmony_ci</ul> 1713e5c31af7Sopenharmony_ci</div> 1714e5c31af7Sopenharmony_ci</div> 1715e5c31af7Sopenharmony_ci</div> 1716e5c31af7Sopenharmony_ci</div> 1717e5c31af7Sopenharmony_ci</div> 1718e5c31af7Sopenharmony_ci</div> 1719e5c31af7Sopenharmony_ci</div> 1720e5c31af7Sopenharmony_ci</div> 1721e5c31af7Sopenharmony_ci<div class="sect1"> 1722e5c31af7Sopenharmony_ci<h2 id="hic"><a class="anchor" href="#hic"></a>3. Host Image Copy</h2> 1723e5c31af7Sopenharmony_ci<div class="sectionbody"> 1724e5c31af7Sopenharmony_ci<div class="paragraph"> 1725e5c31af7Sopenharmony_ci<p>Tristique senectus et netus et malesuada. Tempor commodo ullamcorper a lacus 1726e5c31af7Sopenharmony_civestibulum sed arcu. Tellus in metus vulputate eu scelerisque. Lectus sit amet 1727e5c31af7Sopenharmony_ciest placerat in. Quam adipiscing vitae proin sagittis. Mattis pellentesque id 1728e5c31af7Sopenharmony_cinibh tortor id aliquet lectus proin nibh. Sociis natoque penatibus et magnis 1729e5c31af7Sopenharmony_cidis parturient montes nascetur. Lobortis mattis aliquam faucibus purus in massa 1730e5c31af7Sopenharmony_citempor nec. Ut ornare lectus sit amet est placerat in. Integer quis auctor elit 1731e5c31af7Sopenharmony_cised vulputate mi sit amet mauris. Ultrices sagittis orci a scelerisque purus 1732e5c31af7Sopenharmony_cisemper eget duis. Sit amet consectetur adipiscing elit duis tristique. Semper 1733e5c31af7Sopenharmony_cirisus in hendrerit gravida rutrum. Lorem ipsum dolor sit amet consectetur 1734e5c31af7Sopenharmony_ciadipiscing elit duis. Varius morbi enim nunc faucibus a pellentesque sit amet. 1735e5c31af7Sopenharmony_ciPraesent semper feugiat nibh sed pulvinar proin. Porttitor leo a diam 1736e5c31af7Sopenharmony_cisollicitudin tempor id. In massa tempor nec feugiat nisl pretium fusce id. Amet 1737e5c31af7Sopenharmony_civenenatis urna cursus eget nunc scelerisque.</p> 1738e5c31af7Sopenharmony_ci</div> 1739e5c31af7Sopenharmony_ci<div class="openblock"> 1740e5c31af7Sopenharmony_ci<div class="content"> 1741e5c31af7Sopenharmony_ci<div class="paragraph"> 1742e5c31af7Sopenharmony_ci<p>Cursus sit amet dictum sit amet justo:</p> 1743e5c31af7Sopenharmony_ci</div> 1744e5c31af7Sopenharmony_ci<div id="vkCopyMemoryToImageEXT" class="listingblock"> 1745e5c31af7Sopenharmony_ci<div class="content"> 1746e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_EXT_host_image_copy</span> 1747e5c31af7Sopenharmony_ci<span class="n">VkResult</span> <span class="nf">vkCopyMemoryToImageEXT</span><span class="p">(</span> 1748e5c31af7Sopenharmony_ci <span class="n">VkDevice</span> <span class="n">device</span><span class="p">,</span> 1749e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="n">VkCopyMemoryToImageInfoEXT</span><span class="o">*</span> <span class="n">pCopyMemoryToImageInfo</span><span class="p">);</span></code></pre> 1750e5c31af7Sopenharmony_ci</div> 1751e5c31af7Sopenharmony_ci</div> 1752e5c31af7Sopenharmony_ci<div class="ulist"> 1753e5c31af7Sopenharmony_ci<ul> 1754e5c31af7Sopenharmony_ci<li> 1755e5c31af7Sopenharmony_ci<p><code>device</code> Quis viverra nibh cras pulvinar mattis nunc 1756e5c31af7Sopenharmony_ci<code>pCopyMemoryToImageInfo->dstImage</code>.</p> 1757e5c31af7Sopenharmony_ci</li> 1758e5c31af7Sopenharmony_ci<li> 1759e5c31af7Sopenharmony_ci<p><code>pCopyMemoryToImageInfo</code> Est velit egestas dui id ornare. Tristique nulla aliquet enim tortor at 1760e5c31af7Sopenharmony_ci<a href="#VkCopyMemoryToImageInfoEXT">VkCopyMemoryToImageInfoEXT</a> structure.</p> 1761e5c31af7Sopenharmony_ci</li> 1762e5c31af7Sopenharmony_ci</ul> 1763e5c31af7Sopenharmony_ci</div> 1764e5c31af7Sopenharmony_ci<div class="paragraph"> 1765e5c31af7Sopenharmony_ci<p>Turpis egestas pretium aenean pharetra <a href="#vkCmdCopyBufferToImage2">vkCmdCopyBufferToImage2</a>, magna ac placerat vestibulum lectus.</p> 1766e5c31af7Sopenharmony_ci</div> 1767e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1768e5c31af7Sopenharmony_ci<div class="content"> 1769e5c31af7Sopenharmony_ci<div class="title">Valid Usage</div> 1770e5c31af7Sopenharmony_ci<div class="ulist"> 1771e5c31af7Sopenharmony_ci<ul> 1772e5c31af7Sopenharmony_ci<li> 1773e5c31af7Sopenharmony_ci<p><a id="VUID-vkCopyMemoryToImageEXT-hostImageCopy-99058" href="#VUID-vkCopyMemoryToImageEXT-hostImageCopy-99058"></a> <span class="vuid">VUID-vkCopyMemoryToImageEXT-hostImageCopy-99058</span><br> 1774e5c31af7Sopenharmony_ci 1775e5c31af7Sopenharmony_ciRisus quis varius <a href="#features-hostImageCopy"><code>hostImageCopy</code></a> quam 1776e5c31af7Sopenharmony_ciquisque id diam vel</p> 1777e5c31af7Sopenharmony_ci</li> 1778e5c31af7Sopenharmony_ci</ul> 1779e5c31af7Sopenharmony_ci</div> 1780e5c31af7Sopenharmony_ci</div> 1781e5c31af7Sopenharmony_ci</div> 1782e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1783e5c31af7Sopenharmony_ci<div class="content"> 1784e5c31af7Sopenharmony_ci<div class="title">Valid Usage (Implicit)</div> 1785e5c31af7Sopenharmony_ci<div class="ulist"> 1786e5c31af7Sopenharmony_ci<ul> 1787e5c31af7Sopenharmony_ci<li> 1788e5c31af7Sopenharmony_ci<p><a id="VUID-vkCopyMemoryToImageEXT-device-parameter" href="#VUID-vkCopyMemoryToImageEXT-device-parameter"></a> <span class="vuid">VUID-vkCopyMemoryToImageEXT-device-parameter</span><br> 1789e5c31af7Sopenharmony_ci <code>device</code> <strong class="purple">must</strong> be a valid <a href="#VkDevice">VkDevice</a> handle</p> 1790e5c31af7Sopenharmony_ci</li> 1791e5c31af7Sopenharmony_ci<li> 1792e5c31af7Sopenharmony_ci<p><a id="VUID-vkCopyMemoryToImageEXT-pCopyMemoryToImageInfo-parameter" href="#VUID-vkCopyMemoryToImageEXT-pCopyMemoryToImageInfo-parameter"></a> <span class="vuid">VUID-vkCopyMemoryToImageEXT-pCopyMemoryToImageInfo-parameter</span><br> 1793e5c31af7Sopenharmony_ci <code>pCopyMemoryToImageInfo</code> <strong class="purple">must</strong> be a valid pointer to a valid <a href="#VkCopyMemoryToImageInfoEXT">VkCopyMemoryToImageInfoEXT</a> structure</p> 1794e5c31af7Sopenharmony_ci</li> 1795e5c31af7Sopenharmony_ci</ul> 1796e5c31af7Sopenharmony_ci</div> 1797e5c31af7Sopenharmony_ci</div> 1798e5c31af7Sopenharmony_ci</div> 1799e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1800e5c31af7Sopenharmony_ci<div class="content"> 1801e5c31af7Sopenharmony_ci<div class="title">Return Codes</div> 1802e5c31af7Sopenharmony_ci<div class="dlist"> 1803e5c31af7Sopenharmony_ci<dl> 1804e5c31af7Sopenharmony_ci<dt class="hdlist1"><a href="#fundamentals-successcodes">Success</a></dt> 1805e5c31af7Sopenharmony_ci<dd> 1806e5c31af7Sopenharmony_ci<div class="ulist"> 1807e5c31af7Sopenharmony_ci<ul> 1808e5c31af7Sopenharmony_ci<li> 1809e5c31af7Sopenharmony_ci<p><code>VK_SUCCESS</code></p> 1810e5c31af7Sopenharmony_ci</li> 1811e5c31af7Sopenharmony_ci</ul> 1812e5c31af7Sopenharmony_ci</div> 1813e5c31af7Sopenharmony_ci</dd> 1814e5c31af7Sopenharmony_ci<dt class="hdlist1"><a href="#fundamentals-errorcodes">Failure</a></dt> 1815e5c31af7Sopenharmony_ci<dd> 1816e5c31af7Sopenharmony_ci<div class="ulist"> 1817e5c31af7Sopenharmony_ci<ul> 1818e5c31af7Sopenharmony_ci<li> 1819e5c31af7Sopenharmony_ci<p><code>VK_ERROR_INITIALIZATION_FAILED</code></p> 1820e5c31af7Sopenharmony_ci</li> 1821e5c31af7Sopenharmony_ci<li> 1822e5c31af7Sopenharmony_ci<p><code>VK_ERROR_OUT_OF_HOST_MEMORY</code></p> 1823e5c31af7Sopenharmony_ci</li> 1824e5c31af7Sopenharmony_ci<li> 1825e5c31af7Sopenharmony_ci<p><code>VK_ERROR_OUT_OF_DEVICE_MEMORY</code></p> 1826e5c31af7Sopenharmony_ci</li> 1827e5c31af7Sopenharmony_ci<li> 1828e5c31af7Sopenharmony_ci<p><code>VK_ERROR_MEMORY_MAP_FAILED</code></p> 1829e5c31af7Sopenharmony_ci</li> 1830e5c31af7Sopenharmony_ci</ul> 1831e5c31af7Sopenharmony_ci</div> 1832e5c31af7Sopenharmony_ci</dd> 1833e5c31af7Sopenharmony_ci</dl> 1834e5c31af7Sopenharmony_ci</div> 1835e5c31af7Sopenharmony_ci</div> 1836e5c31af7Sopenharmony_ci</div> 1837e5c31af7Sopenharmony_ci</div> 1838e5c31af7Sopenharmony_ci</div> 1839e5c31af7Sopenharmony_ci<div class="openblock"> 1840e5c31af7Sopenharmony_ci<div class="content"> 1841e5c31af7Sopenharmony_ci<div class="paragraph"> 1842e5c31af7Sopenharmony_ci<p>Morbi tincidunt augue interdum velit euismod in pellentesque massa <code>VkCopyMemoryToImageInfoEXT</code> structure:</p> 1843e5c31af7Sopenharmony_ci</div> 1844e5c31af7Sopenharmony_ci<div id="VkCopyMemoryToImageInfoEXT" class="listingblock"> 1845e5c31af7Sopenharmony_ci<div class="content"> 1846e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_EXT_host_image_copy</span> 1847e5c31af7Sopenharmony_ci<span class="k">typedef</span> <span class="k">struct</span> <span class="nc">VkCopyMemoryToImageInfoEXT</span> <span class="p">{</span> 1848e5c31af7Sopenharmony_ci <span class="n">VkStructureType</span> <span class="n">sType</span><span class="p">;</span> 1849e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="kt">void</span><span class="o">*</span> <span class="n">pNext</span><span class="p">;</span> 1850e5c31af7Sopenharmony_ci <span class="n">VkHostImageCopyFlagsEXT</span> <span class="n">flags</span><span class="p">;</span> 1851e5c31af7Sopenharmony_ci <span class="n">VkImage</span> <span class="n">dstImage</span><span class="p">;</span> 1852e5c31af7Sopenharmony_ci <span class="n">VkImageLayout</span> <span class="n">dstImageLayout</span><span class="p">;</span> 1853e5c31af7Sopenharmony_ci <span class="kt">uint32_t</span> <span class="n">regionCount</span><span class="p">;</span> 1854e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="n">VkMemoryToImageCopyEXT</span><span class="o">*</span> <span class="n">pRegions</span><span class="p">;</span> 1855e5c31af7Sopenharmony_ci<span class="p">}</span> <span class="n">VkCopyMemoryToImageInfoEXT</span><span class="p">;</span></code></pre> 1856e5c31af7Sopenharmony_ci</div> 1857e5c31af7Sopenharmony_ci</div> 1858e5c31af7Sopenharmony_ci<div class="ulist"> 1859e5c31af7Sopenharmony_ci<ul> 1860e5c31af7Sopenharmony_ci<li> 1861e5c31af7Sopenharmony_ci<p><code>sType</code> on enim praesent elementum facilisis.</p> 1862e5c31af7Sopenharmony_ci</li> 1863e5c31af7Sopenharmony_ci<li> 1864e5c31af7Sopenharmony_ci<p><code>pNext</code> Ultricies tristique <code>NULL</code> nulla aliquet enim tortor.</p> 1865e5c31af7Sopenharmony_ci</li> 1866e5c31af7Sopenharmony_ci<li> 1867e5c31af7Sopenharmony_ci<p><code>flags</code> Volutpat ac tincidunt vitae semper.</p> 1868e5c31af7Sopenharmony_ci</li> 1869e5c31af7Sopenharmony_ci<li> 1870e5c31af7Sopenharmony_ci<p><code>dstImage</code> Orci eu lobortis elementum nibh.</p> 1871e5c31af7Sopenharmony_ci</li> 1872e5c31af7Sopenharmony_ci<li> 1873e5c31af7Sopenharmony_ci<p><code>dstImageLayout</code> Euismod elementum nisi quis eleifend quam adipiscing vitae proin.</p> 1874e5c31af7Sopenharmony_ci</li> 1875e5c31af7Sopenharmony_ci<li> 1876e5c31af7Sopenharmony_ci<p><code>regionCount</code> Et netus et malesuada fames ac turpis egestas.</p> 1877e5c31af7Sopenharmony_ci</li> 1878e5c31af7Sopenharmony_ci<li> 1879e5c31af7Sopenharmony_ci<p><code>pRegions</code> Lorem ipsum dolor sitr <a href="#VkMemoryToImageCopyEXT">VkMemoryToImageCopyEXT</a> amet consectetu.</p> 1880e5c31af7Sopenharmony_ci</li> 1881e5c31af7Sopenharmony_ci</ul> 1882e5c31af7Sopenharmony_ci</div> 1883e5c31af7Sopenharmony_ci<div class="paragraph"> 1884e5c31af7Sopenharmony_ci<p><code>vkCopyMemoryToImageEXT</code> pulvinar neque laoreet suspendisse interdum 1885e5c31af7Sopenharmony_ciconsectetur libero. Id porta nibh venenatis cras sed felis. Massa vitae tortor 1886e5c31af7Sopenharmony_cicondimentum lacinia quis.</p> 1887e5c31af7Sopenharmony_ci</div> 1888e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1889e5c31af7Sopenharmony_ci<div class="content"> 1890e5c31af7Sopenharmony_ci<div class="title">Valid Usage</div> 1891e5c31af7Sopenharmony_ci<div class="ulist"> 1892e5c31af7Sopenharmony_ci<ul> 1893e5c31af7Sopenharmony_ci<li> 1894e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-dstImage-97966" href="#VUID-VkCopyMemoryToImageInfoEXT-dstImage-97966"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-dstImage-97966</span><br> 1895e5c31af7Sopenharmony_ci 1896e5c31af7Sopenharmony_ciIf <code>dstImage</code> is non-sparse then the image or the specified 1897e5c31af7Sopenharmony_ci<em>disjoint</em> plane <strong class="purple">must</strong> be bound completely and contiguously to a single 1898e5c31af7Sopenharmony_ci<code>VkDeviceMemory</code> object</p> 1899e5c31af7Sopenharmony_ci</li> 1900e5c31af7Sopenharmony_ci<li> 1901e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-imageSubresource-97967" href="#VUID-VkCopyMemoryToImageInfoEXT-imageSubresource-97967"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-imageSubresource-97967</span><br> 1902e5c31af7Sopenharmony_ci 1903e5c31af7Sopenharmony_ciThe <code>imageSubresource.mipLevel</code> member of each element of 1904e5c31af7Sopenharmony_ci<code>pRegions</code> <strong class="purple">must</strong> be less than the <code>mipLevels</code> specified in 1905e5c31af7Sopenharmony_ci<a href="#VkImageCreateInfo">VkImageCreateInfo</a> when <code>dstImage</code> was created</p> 1906e5c31af7Sopenharmony_ci</li> 1907e5c31af7Sopenharmony_ci<li> 1908e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-imageSubresource-97968" href="#VUID-VkCopyMemoryToImageInfoEXT-imageSubresource-97968"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-imageSubresource-97968</span><br> 1909e5c31af7Sopenharmony_ci 1910e5c31af7Sopenharmony_ciThe <span class="eq"><code>imageSubresource.baseArrayLayer</code> + 1911e5c31af7Sopenharmony_ci<code>imageSubresource.layerCount</code></span> of each element of <code>pRegions</code> 1912e5c31af7Sopenharmony_ci, if <code>imageSubresource.layerCount</code> is not 1913e5c31af7Sopenharmony_ci<code>VK_REMAINING_ARRAY_LAYERS</code> and <a href="#features-maintenance5"><code>maintenance5</code></a> is not enabled, 1914e5c31af7Sopenharmony_ci<strong class="purple">must</strong> be less than or equal to the <code>arrayLayers</code> specified in 1915e5c31af7Sopenharmony_ci<a href="#VkImageCreateInfo">VkImageCreateInfo</a> when <code>dstImage</code> was created</p> 1916e5c31af7Sopenharmony_ci</li> 1917e5c31af7Sopenharmony_ci<li> 1918e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-dstImage-97969" href="#VUID-VkCopyMemoryToImageInfoEXT-dstImage-97969"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-dstImage-97969</span><br> 1919e5c31af7Sopenharmony_ci 1920e5c31af7Sopenharmony_ci<code>dstImage</code> <strong class="purple">must</strong> not have been created with <code>flags</code> 1921e5c31af7Sopenharmony_cicontaining <code>VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT</code></p> 1922e5c31af7Sopenharmony_ci</li> 1923e5c31af7Sopenharmony_ci<li> 1924e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-dstImageLayout-99059" href="#VUID-VkCopyMemoryToImageInfoEXT-dstImageLayout-99059"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-dstImageLayout-99059</span><br> 1925e5c31af7Sopenharmony_ci 1926e5c31af7Sopenharmony_ci<code>dstImageLayout</code> <strong class="purple">must</strong> Lorem ipsum dolor sit amet, <code>dstImage</code> 1927e5c31af7Sopenharmony_ciconsectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore 1928e5c31af7Sopenharmony_ci<code>pRegions</code> et dolore magna aliqua</p> 1929e5c31af7Sopenharmony_ci</li> 1930e5c31af7Sopenharmony_ci</ul> 1931e5c31af7Sopenharmony_ci</div> 1932e5c31af7Sopenharmony_ci</div> 1933e5c31af7Sopenharmony_ci</div> 1934e5c31af7Sopenharmony_ci<div class="sidebarblock"> 1935e5c31af7Sopenharmony_ci<div class="content"> 1936e5c31af7Sopenharmony_ci<div class="title">Valid Usage (Implicit)</div> 1937e5c31af7Sopenharmony_ci<div class="ulist"> 1938e5c31af7Sopenharmony_ci<ul> 1939e5c31af7Sopenharmony_ci<li> 1940e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-sType-sType" href="#VUID-VkCopyMemoryToImageInfoEXT-sType-sType"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-sType-sType</span><br> 1941e5c31af7Sopenharmony_ci <code>sType</code> <strong class="purple">must</strong> be <code>VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO_EXT</code></p> 1942e5c31af7Sopenharmony_ci</li> 1943e5c31af7Sopenharmony_ci<li> 1944e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-pNext-pNext" href="#VUID-VkCopyMemoryToImageInfoEXT-pNext-pNext"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-pNext-pNext</span><br> 1945e5c31af7Sopenharmony_ci <code>pNext</code> <strong class="purple">must</strong> be <code>NULL</code></p> 1946e5c31af7Sopenharmony_ci</li> 1947e5c31af7Sopenharmony_ci<li> 1948e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-flags-parameter" href="#VUID-VkCopyMemoryToImageInfoEXT-flags-parameter"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-flags-parameter</span><br> 1949e5c31af7Sopenharmony_ci <code>flags</code> <strong class="purple">must</strong> be a valid combination of <a href="#VkHostImageCopyFlagBitsEXT">VkHostImageCopyFlagBitsEXT</a> values</p> 1950e5c31af7Sopenharmony_ci</li> 1951e5c31af7Sopenharmony_ci<li> 1952e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-dstImage-parameter" href="#VUID-VkCopyMemoryToImageInfoEXT-dstImage-parameter"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-dstImage-parameter</span><br> 1953e5c31af7Sopenharmony_ci <code>dstImage</code> <strong class="purple">must</strong> be a valid <a href="#VkImage">VkImage</a> handle</p> 1954e5c31af7Sopenharmony_ci</li> 1955e5c31af7Sopenharmony_ci<li> 1956e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-dstImageLayout-parameter" href="#VUID-VkCopyMemoryToImageInfoEXT-dstImageLayout-parameter"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-dstImageLayout-parameter</span><br> 1957e5c31af7Sopenharmony_ci <code>dstImageLayout</code> <strong class="purple">must</strong> be a valid <a href="#VkImageLayout">VkImageLayout</a> value</p> 1958e5c31af7Sopenharmony_ci</li> 1959e5c31af7Sopenharmony_ci<li> 1960e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-pRegions-parameter" href="#VUID-VkCopyMemoryToImageInfoEXT-pRegions-parameter"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-pRegions-parameter</span><br> 1961e5c31af7Sopenharmony_ci <code>pRegions</code> <strong class="purple">must</strong> be a valid pointer to an array of <code>regionCount</code> valid <a href="#VkMemoryToImageCopyEXT">VkMemoryToImageCopyEXT</a> structures</p> 1962e5c31af7Sopenharmony_ci</li> 1963e5c31af7Sopenharmony_ci<li> 1964e5c31af7Sopenharmony_ci<p><a id="VUID-VkCopyMemoryToImageInfoEXT-regionCount-arraylength" href="#VUID-VkCopyMemoryToImageInfoEXT-regionCount-arraylength"></a> <span class="vuid">VUID-VkCopyMemoryToImageInfoEXT-regionCount-arraylength</span><br> 1965e5c31af7Sopenharmony_ci <code>regionCount</code> <strong class="purple">must</strong> be greater than <code>0</code></p> 1966e5c31af7Sopenharmony_ci</li> 1967e5c31af7Sopenharmony_ci</ul> 1968e5c31af7Sopenharmony_ci</div> 1969e5c31af7Sopenharmony_ci</div> 1970e5c31af7Sopenharmony_ci</div> 1971e5c31af7Sopenharmony_ci</div> 1972e5c31af7Sopenharmony_ci</div> 1973e5c31af7Sopenharmony_ci<div class="openblock"> 1974e5c31af7Sopenharmony_ci<div class="content"> 1975e5c31af7Sopenharmony_ci<div class="paragraph"> 1976e5c31af7Sopenharmony_ci<p>Congue eu consequat ac felis donec et odio. Enim nec 1977e5c31af7Sopenharmony_ci<a href="#VkCopyMemoryToImageInfoEXT">VkCopyMemoryToImageInfoEXT</a>::<code>pRegions</code> dui nunc mattis enim:</p> 1978e5c31af7Sopenharmony_ci</div> 1979e5c31af7Sopenharmony_ci<div id="VkMemoryToImageCopyEXT" class="listingblock"> 1980e5c31af7Sopenharmony_ci<div class="content"> 1981e5c31af7Sopenharmony_ci<pre class="rouge highlight"><code data-lang="c++"><span class="c1">// Provided by VK_EXT_host_image_copy</span> 1982e5c31af7Sopenharmony_ci<span class="k">typedef</span> <span class="k">struct</span> <span class="nc">VkMemoryToImageCopyEXT</span> <span class="p">{</span> 1983e5c31af7Sopenharmony_ci <span class="n">VkStructureType</span> <span class="n">sType</span><span class="p">;</span> 1984e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="kt">void</span><span class="o">*</span> <span class="n">pNext</span><span class="p">;</span> 1985e5c31af7Sopenharmony_ci <span class="k">const</span> <span class="kt">void</span><span class="o">*</span> <span class="n">pHostPointer</span><span class="p">;</span> 1986e5c31af7Sopenharmony_ci <span class="kt">uint32_t</span> <span class="n">memoryRowLength</span><span class="p">;</span> 1987e5c31af7Sopenharmony_ci <span class="kt">uint32_t</span> <span class="n">memoryImageHeight</span><span class="p">;</span> 1988e5c31af7Sopenharmony_ci <span class="n">VkImageSubresourceLayers</span> <span class="n">imageSubresource</span><span class="p">;</span> 1989e5c31af7Sopenharmony_ci <span class="n">VkOffset3D</span> <span class="n">imageOffset</span><span class="p">;</span> 1990e5c31af7Sopenharmony_ci <span class="n">VkExtent3D</span> <span class="n">imageExtent</span><span class="p">;</span> 1991e5c31af7Sopenharmony_ci<span class="p">}</span> <span class="n">VkMemoryToImageCopyEXT</span><span class="p">;</span></code></pre> 1992e5c31af7Sopenharmony_ci</div> 1993e5c31af7Sopenharmony_ci</div> 1994e5c31af7Sopenharmony_ci<div class="ulist"> 1995e5c31af7Sopenharmony_ci<ul> 1996e5c31af7Sopenharmony_ci<li> 1997e5c31af7Sopenharmony_ci<p><code>sType</code> Nulla facilisi etiam dignissim diam quis enim lobortis scelerisque fermentum.</p> 1998e5c31af7Sopenharmony_ci</li> 1999e5c31af7Sopenharmony_ci<li> 2000e5c31af7Sopenharmony_ci<p><code>pNext</code> Nam libero justo laoreet sit amet.</p> 2001e5c31af7Sopenharmony_ci</li> 2002e5c31af7Sopenharmony_ci<li> 2003e5c31af7Sopenharmony_ci<p><code>pHostPointer</code> Lacus luctus accumsan tortor posuere.</p> 2004e5c31af7Sopenharmony_ci</li> 2005e5c31af7Sopenharmony_ci<li> 2006e5c31af7Sopenharmony_ci<p><code>memoryRowLength</code> and <code>memoryImageHeight</code> Ultrices tincidunt arcu 2007e5c31af7Sopenharmony_cinon sodales. Ut enim blandit volutpat maecenas volutpat blandit aliquam 2008e5c31af7Sopenharmony_cietiam <code>imageExtent</code>.</p> 2009e5c31af7Sopenharmony_ci</li> 2010e5c31af7Sopenharmony_ci<li> 2011e5c31af7Sopenharmony_ci<p><code>imageSubresource</code> Sed id semper risus in. Natoque penatibus et magnis dis parturient montes.</p> 2012e5c31af7Sopenharmony_ci</li> 2013e5c31af7Sopenharmony_ci<li> 2014e5c31af7Sopenharmony_ci<p><code>imageOffset</code> Vestibulum morbi blandit cursus <code>x</code>, <code>y</code>, <code>z</code> 2015e5c31af7Sopenharmony_cirisus at ultrices mi tempus imperdiet.</p> 2016e5c31af7Sopenharmony_ci</li> 2017e5c31af7Sopenharmony_ci<li> 2018e5c31af7Sopenharmony_ci<p><code>imageExtent</code> Dignissim cras tincidunt lobortis feugiat vivamus at 2019e5c31af7Sopenharmony_ci<code>width</code>, <code>height</code> and <code>depth</code> augue eget arcu.</p> 2020e5c31af7Sopenharmony_ci</li> 2021e5c31af7Sopenharmony_ci</ul> 2022e5c31af7Sopenharmony_ci</div> 2023e5c31af7Sopenharmony_ci<div class="paragraph"> 2024e5c31af7Sopenharmony_ci<p>Ultricies mi eget mauris pharetra. Ac turpis <a href="#VkBufferImageCopy2">VkBufferImageCopy2</a> egestas 2025e5c31af7Sopenharmony_cimaecenas pharetra convallis posuere morbi leo urna. Cras sed felis eget velit 2026e5c31af7Sopenharmony_cialiquet. Sit amet mauris commodo quis imperdiet. Malesuada pellentesque elit 2027e5c31af7Sopenharmony_cieget gravida cum sociis natoque. Faucibus pulvinar elementum integer enim neque 2028e5c31af7Sopenharmony_civolutpat ac tincidunt vitae</p> 2029e5c31af7Sopenharmony_ci</div> 2030e5c31af7Sopenharmony_ci<div class="sidebarblock"> 2031e5c31af7Sopenharmony_ci<div class="content"> 2032e5c31af7Sopenharmony_ci<div class="title">Valid Usage</div> 2033e5c31af7Sopenharmony_ci<div class="ulist"> 2034e5c31af7Sopenharmony_ci<ul> 2035e5c31af7Sopenharmony_ci<li> 2036e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-pHostPointer-99061" href="#VUID-VkMemoryToImageCopyEXT-pHostPointer-99061"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-pHostPointer-99061</span><br> 2037e5c31af7Sopenharmony_ci 2038e5c31af7Sopenharmony_ci<code>pHostPointer</code> <strong class="purple">must</strong> Nisl condimentum id venenatis a condimentum vitae</p> 2039e5c31af7Sopenharmony_ci</li> 2040e5c31af7Sopenharmony_ci</ul> 2041e5c31af7Sopenharmony_ci</div> 2042e5c31af7Sopenharmony_ci<div class="ulist"> 2043e5c31af7Sopenharmony_ci<ul> 2044e5c31af7Sopenharmony_ci<li> 2045e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-memoryRowLength-99101" href="#VUID-VkMemoryToImageCopyEXT-memoryRowLength-99101"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-memoryRowLength-99101</span><br> 2046e5c31af7Sopenharmony_ci 2047e5c31af7Sopenharmony_ci<code>memoryRowLength</code> <strong class="purple">must</strong> be <code>0</code>, or greater than or equal to the 2048e5c31af7Sopenharmony_ci<code>width</code> member of <code>imageExtent</code></p> 2049e5c31af7Sopenharmony_ci</li> 2050e5c31af7Sopenharmony_ci<li> 2051e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-memoryImageHeight-99102" href="#VUID-VkMemoryToImageCopyEXT-memoryImageHeight-99102"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-memoryImageHeight-99102</span><br> 2052e5c31af7Sopenharmony_ci 2053e5c31af7Sopenharmony_ci<code>memoryImageHeight</code> <strong class="purple">must</strong> be <code>0</code>, or greater than or equal to the 2054e5c31af7Sopenharmony_ci<code>height</code> member of <code>imageExtent</code></p> 2055e5c31af7Sopenharmony_ci</li> 2056e5c31af7Sopenharmony_ci<li> 2057e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-aspectMask-99103" href="#VUID-VkMemoryToImageCopyEXT-aspectMask-99103"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-aspectMask-99103</span><br> 2058e5c31af7Sopenharmony_ci 2059e5c31af7Sopenharmony_ciThe <code>aspectMask</code> member of <code>imageSubresource</code> <strong class="purple">must</strong> only have a 2060e5c31af7Sopenharmony_cisingle bit set</p> 2061e5c31af7Sopenharmony_ci</li> 2062e5c31af7Sopenharmony_ci<li> 2063e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-imageExtent-96659" href="#VUID-VkMemoryToImageCopyEXT-imageExtent-96659"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-imageExtent-96659</span><br> 2064e5c31af7Sopenharmony_ci 2065e5c31af7Sopenharmony_ci<code>imageExtent.width</code> <strong class="purple">must</strong> not be 0</p> 2066e5c31af7Sopenharmony_ci</li> 2067e5c31af7Sopenharmony_ci<li> 2068e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-imageExtent-96660" href="#VUID-VkMemoryToImageCopyEXT-imageExtent-96660"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-imageExtent-96660</span><br> 2069e5c31af7Sopenharmony_ci 2070e5c31af7Sopenharmony_ci<code>imageExtent.height</code> <strong class="purple">must</strong> not be 0</p> 2071e5c31af7Sopenharmony_ci</li> 2072e5c31af7Sopenharmony_ci<li> 2073e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-imageExtent-96661" href="#VUID-VkMemoryToImageCopyEXT-imageExtent-96661"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-imageExtent-96661</span><br> 2074e5c31af7Sopenharmony_ci 2075e5c31af7Sopenharmony_ci<code>imageExtent.depth</code> <strong class="purple">must</strong> not be 0</p> 2076e5c31af7Sopenharmony_ci</li> 2077e5c31af7Sopenharmony_ci</ul> 2078e5c31af7Sopenharmony_ci</div> 2079e5c31af7Sopenharmony_ci</div> 2080e5c31af7Sopenharmony_ci</div> 2081e5c31af7Sopenharmony_ci<div class="sidebarblock"> 2082e5c31af7Sopenharmony_ci<div class="content"> 2083e5c31af7Sopenharmony_ci<div class="title">Valid Usage (Implicit)</div> 2084e5c31af7Sopenharmony_ci<div class="ulist"> 2085e5c31af7Sopenharmony_ci<ul> 2086e5c31af7Sopenharmony_ci<li> 2087e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-sType-sType" href="#VUID-VkMemoryToImageCopyEXT-sType-sType"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-sType-sType</span><br> 2088e5c31af7Sopenharmony_ci <code>sType</code> <strong class="purple">must</strong> be <code>VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY_EXT</code></p> 2089e5c31af7Sopenharmony_ci</li> 2090e5c31af7Sopenharmony_ci<li> 2091e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-pNext-pNext" href="#VUID-VkMemoryToImageCopyEXT-pNext-pNext"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-pNext-pNext</span><br> 2092e5c31af7Sopenharmony_ci <code>pNext</code> <strong class="purple">must</strong> be <code>NULL</code></p> 2093e5c31af7Sopenharmony_ci</li> 2094e5c31af7Sopenharmony_ci<li> 2095e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-pHostPointer-parameter" href="#VUID-VkMemoryToImageCopyEXT-pHostPointer-parameter"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-pHostPointer-parameter</span><br> 2096e5c31af7Sopenharmony_ci <code>pHostPointer</code> <strong class="purple">must</strong> be a pointer value</p> 2097e5c31af7Sopenharmony_ci</li> 2098e5c31af7Sopenharmony_ci<li> 2099e5c31af7Sopenharmony_ci<p><a id="VUID-VkMemoryToImageCopyEXT-imageSubresource-parameter" href="#VUID-VkMemoryToImageCopyEXT-imageSubresource-parameter"></a> <span class="vuid">VUID-VkMemoryToImageCopyEXT-imageSubresource-parameter</span><br> 2100e5c31af7Sopenharmony_ci <code>imageSubresource</code> <strong class="purple">must</strong> be a valid <a href="#VkImageSubresourceLayers">VkImageSubresourceLayers</a> structure</p> 2101e5c31af7Sopenharmony_ci</li> 2102e5c31af7Sopenharmony_ci</ul> 2103e5c31af7Sopenharmony_ci</div> 2104e5c31af7Sopenharmony_ci</div> 2105e5c31af7Sopenharmony_ci</div> 2106e5c31af7Sopenharmony_ci</div> 2107e5c31af7Sopenharmony_ci</div> 2108e5c31af7Sopenharmony_ci</div> 2109e5c31af7Sopenharmony_ci</div> 2110e5c31af7Sopenharmony_ci<div class="sect1"> 2111e5c31af7Sopenharmony_ci<h2 id="extensions"><a class="anchor" href="#extensions"></a>Layers & Extensions (Informative)</h2> 2112e5c31af7Sopenharmony_ci<div class="sectionbody"> 2113e5c31af7Sopenharmony_ci<div class="paragraph"> 2114e5c31af7Sopenharmony_ci<p>Cursus euismod quis viverra nibh cras pulvinar.</p> 2115e5c31af7Sopenharmony_ci</div> 2116e5c31af7Sopenharmony_ci<div class="sect2"> 2117e5c31af7Sopenharmony_ci<h3 id="_extension_dependencies"><a class="anchor" href="#_extension_dependencies"></a>Extension Dependencies</h3> 2118e5c31af7Sopenharmony_ci<div class="paragraph"> 2119e5c31af7Sopenharmony_ci<p>Id diam vel quam elementum</p> 2120e5c31af7Sopenharmony_ci</div> 2121e5c31af7Sopenharmony_ci<div class="sect3"> 2122e5c31af7Sopenharmony_ci<h4 id="VK_EXT_host_image_copy"><a class="anchor" href="#VK_EXT_host_image_copy"></a>VK_EXT_host_image_copy</h4> 2123e5c31af7Sopenharmony_ci<div class="dlist"> 2124e5c31af7Sopenharmony_ci<dl> 2125e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Name String</strong></dt> 2126e5c31af7Sopenharmony_ci<dd> 2127e5c31af7Sopenharmony_ci<p><code>VK_EXT_host_image_copy</code></p> 2128e5c31af7Sopenharmony_ci</dd> 2129e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Extension Type</strong></dt> 2130e5c31af7Sopenharmony_ci<dd> 2131e5c31af7Sopenharmony_ci<p>Device extension</p> 2132e5c31af7Sopenharmony_ci</dd> 2133e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Registered Extension Number</strong></dt> 2134e5c31af7Sopenharmony_ci<dd> 2135e5c31af7Sopenharmony_ci<p>271</p> 2136e5c31af7Sopenharmony_ci</dd> 2137e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Revision</strong></dt> 2138e5c31af7Sopenharmony_ci<dd> 2139e5c31af7Sopenharmony_ci<p>1</p> 2140e5c31af7Sopenharmony_ci</dd> 2141e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Ratification Status</strong></dt> 2142e5c31af7Sopenharmony_ci<dd> 2143e5c31af7Sopenharmony_ci<p>Ratified</p> 2144e5c31af7Sopenharmony_ci</dd> 2145e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Extension and Version Dependencies</strong></dt> 2146e5c31af7Sopenharmony_ci<dd> 2147e5c31af7Sopenharmony_ci<div class="openblock"> 2148e5c31af7Sopenharmony_ci<div class="content"> 2149e5c31af7Sopenharmony_ci<div class="paragraph"> 2150e5c31af7Sopenharmony_ci<p><a href="#VK_KHR_get_physical_device_properties2">VK_KHR_get_physical_device_properties2</a><br> 2151e5c31af7Sopenharmony_ciand<br> 2152e5c31af7Sopenharmony_ci<a href="#VK_KHR_copy_commands2">VK_KHR_copy_commands2</a><br> 2153e5c31af7Sopenharmony_ciand<br> 2154e5c31af7Sopenharmony_ci<a href="#VK_KHR_format_feature_flags2">VK_KHR_format_feature_flags2</a><br></p> 2155e5c31af7Sopenharmony_ci</div> 2156e5c31af7Sopenharmony_ci</div> 2157e5c31af7Sopenharmony_ci</div> 2158e5c31af7Sopenharmony_ci</dd> 2159e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Contact</strong></dt> 2160e5c31af7Sopenharmony_ci<dd> 2161e5c31af7Sopenharmony_ci<div class="ulist"> 2162e5c31af7Sopenharmony_ci<ul> 2163e5c31af7Sopenharmony_ci<li> 2164e5c31af7Sopenharmony_ci<p>Shahbaz Youssefi <a href="https://github.com/KhronosGroup/Vulkan-Docs/issues/new?body=[VK_EXT_host_image_copy] @syoussefi%0A*Here describe the issue or question you have about the VK_EXT_host_image_copy extension*" target="_blank" rel="nofollow noopener"><span class="icon black"><i class="fa fa-github"></i></span>syoussefi</a></p> 2165e5c31af7Sopenharmony_ci</li> 2166e5c31af7Sopenharmony_ci</ul> 2167e5c31af7Sopenharmony_ci</div> 2168e5c31af7Sopenharmony_ci</dd> 2169e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Extension Proposal</strong></dt> 2170e5c31af7Sopenharmony_ci<dd> 2171e5c31af7Sopenharmony_ci<p><a href="https://github.com/KhronosGroup/Vulkan-Docs/tree/main/proposals/VK_EXT_host_image_copy.adoc">VK_EXT_host_image_copy</a></p> 2172e5c31af7Sopenharmony_ci</dd> 2173e5c31af7Sopenharmony_ci</dl> 2174e5c31af7Sopenharmony_ci</div> 2175e5c31af7Sopenharmony_ci</div> 2176e5c31af7Sopenharmony_ci<div class="sect3"> 2177e5c31af7Sopenharmony_ci<h4 id="_other_extension_metadata"><a class="anchor" href="#_other_extension_metadata"></a>Other Extension Metadata</h4> 2178e5c31af7Sopenharmony_ci<div class="dlist"> 2179e5c31af7Sopenharmony_ci<dl> 2180e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Last Modified Date</strong></dt> 2181e5c31af7Sopenharmony_ci<dd> 2182e5c31af7Sopenharmony_ci<p>2186-02-28</p> 2183e5c31af7Sopenharmony_ci</dd> 2184e5c31af7Sopenharmony_ci<dt class="hdlist1"><strong>Contributors</strong></dt> 2185e5c31af7Sopenharmony_ci<dd> 2186e5c31af7Sopenharmony_ci<div class="ulist"> 2187e5c31af7Sopenharmony_ci<ul> 2188e5c31af7Sopenharmony_ci<li> 2189e5c31af7Sopenharmony_ci<p>Zabhash Ifessouy, Elgoog</p> 2190e5c31af7Sopenharmony_ci</li> 2191e5c31af7Sopenharmony_ci<li> 2192e5c31af7Sopenharmony_ci<p>Htiaf Dnartske, Aroballoc</p> 2193e5c31af7Sopenharmony_ci</li> 2194e5c31af7Sopenharmony_ci<li> 2195e5c31af7Sopenharmony_ci<p>Sreip Lleinad, AIDIVN</p> 2196e5c31af7Sopenharmony_ci</li> 2197e5c31af7Sopenharmony_ci</ul> 2198e5c31af7Sopenharmony_ci</div> 2199e5c31af7Sopenharmony_ci</dd> 2200e5c31af7Sopenharmony_ci</dl> 2201e5c31af7Sopenharmony_ci</div> 2202e5c31af7Sopenharmony_ci</div> 2203e5c31af7Sopenharmony_ci<div class="sect3"> 2204e5c31af7Sopenharmony_ci<h4 id="_description"><a class="anchor" href="#_description"></a>Description</h4> 2205e5c31af7Sopenharmony_ci<div class="paragraph"> 2206e5c31af7Sopenharmony_ci<p>Sed risus pretium quam vulputate dignissim suspendisse in est ante. Mauris 2207e5c31af7Sopenharmony_cicommodo quis imperdiet massa tincidunt nunc pulvinar. Odio morbi quis commodo 2208e5c31af7Sopenharmony_ciodio aenean sed. Quam adipiscing vitae proin sagittis nisl rhoncus. Vel 2209e5c31af7Sopenharmony_cifacilisis volutpat est velit egestas dui. Consequat id porta nibh venenatis 2210e5c31af7Sopenharmony_cicras sed felis. Ac tortor dignissim convallis aenean et tortor. Amet porttitor 2211e5c31af7Sopenharmony_cieget dolor morbi non arcu. Consequat interdum varius sit amet. Tempus egestas 2212e5c31af7Sopenharmony_cised sed risus pretium quam. Gravida in fermentum et sollicitudin ac orci 2213e5c31af7Sopenharmony_ciphasellus egestas. Nulla facilisi etiam dignissim diam quis enim lobortis 2214e5c31af7Sopenharmony_ciscelerisque fermentum. Tempus quam pellentesque nec nam aliquam. A pellentesque 2215e5c31af7Sopenharmony_cisit amet porttitor eget. Viverra justo nec ultrices dui sapien eget mi. Nullam 2216e5c31af7Sopenharmony_civehicula ipsum a arcu. Amet volutpat consequat mauris nunc congue nisi. 2217e5c31af7Sopenharmony_ciTincidunt arcu non sodales neque.</p> 2218e5c31af7Sopenharmony_ci</div> 2219e5c31af7Sopenharmony_ci</div> 2220e5c31af7Sopenharmony_ci<div class="sect3"> 2221e5c31af7Sopenharmony_ci<h4 id="_new_commands"><a class="anchor" href="#_new_commands"></a>New Commands</h4> 2222e5c31af7Sopenharmony_ci<div class="ulist"> 2223e5c31af7Sopenharmony_ci<ul> 2224e5c31af7Sopenharmony_ci<li> 2225e5c31af7Sopenharmony_ci<p><a href="#vkCopyImageToImageEXT">vkCopyImageToImageEXT</a></p> 2226e5c31af7Sopenharmony_ci</li> 2227e5c31af7Sopenharmony_ci<li> 2228e5c31af7Sopenharmony_ci<p><a href="#vkCopyImageToMemoryEXT">vkCopyImageToMemoryEXT</a></p> 2229e5c31af7Sopenharmony_ci</li> 2230e5c31af7Sopenharmony_ci<li> 2231e5c31af7Sopenharmony_ci<p><a href="#vkCopyMemoryToImageEXT">vkCopyMemoryToImageEXT</a></p> 2232e5c31af7Sopenharmony_ci</li> 2233e5c31af7Sopenharmony_ci<li> 2234e5c31af7Sopenharmony_ci<p><a href="#vkGetImageSubresourceLayout2EXT">vkGetImageSubresourceLayout2EXT</a></p> 2235e5c31af7Sopenharmony_ci</li> 2236e5c31af7Sopenharmony_ci<li> 2237e5c31af7Sopenharmony_ci<p><a href="#vkTransitionImageLayoutEXT">vkTransitionImageLayoutEXT</a></p> 2238e5c31af7Sopenharmony_ci</li> 2239e5c31af7Sopenharmony_ci</ul> 2240e5c31af7Sopenharmony_ci</div> 2241e5c31af7Sopenharmony_ci</div> 2242e5c31af7Sopenharmony_ci<div class="sect3"> 2243e5c31af7Sopenharmony_ci<h4 id="_new_structures"><a class="anchor" href="#_new_structures"></a>New Structures</h4> 2244e5c31af7Sopenharmony_ci<div class="ulist"> 2245e5c31af7Sopenharmony_ci<ul> 2246e5c31af7Sopenharmony_ci<li> 2247e5c31af7Sopenharmony_ci<p><a href="#VkCopyImageToImageInfoEXT">VkCopyImageToImageInfoEXT</a></p> 2248e5c31af7Sopenharmony_ci</li> 2249e5c31af7Sopenharmony_ci<li> 2250e5c31af7Sopenharmony_ci<p><a href="#VkCopyImageToMemoryInfoEXT">VkCopyImageToMemoryInfoEXT</a></p> 2251e5c31af7Sopenharmony_ci</li> 2252e5c31af7Sopenharmony_ci<li> 2253e5c31af7Sopenharmony_ci<p><a href="#VkCopyMemoryToImageInfoEXT">VkCopyMemoryToImageInfoEXT</a></p> 2254e5c31af7Sopenharmony_ci</li> 2255e5c31af7Sopenharmony_ci<li> 2256e5c31af7Sopenharmony_ci<p><a href="#VkHostImageLayoutTransitionInfoEXT">VkHostImageLayoutTransitionInfoEXT</a></p> 2257e5c31af7Sopenharmony_ci</li> 2258e5c31af7Sopenharmony_ci<li> 2259e5c31af7Sopenharmony_ci<p><a href="#VkImageSubresource2EXT">VkImageSubresource2EXT</a></p> 2260e5c31af7Sopenharmony_ci</li> 2261e5c31af7Sopenharmony_ci<li> 2262e5c31af7Sopenharmony_ci<p><a href="#VkImageToMemoryCopyEXT">VkImageToMemoryCopyEXT</a></p> 2263e5c31af7Sopenharmony_ci</li> 2264e5c31af7Sopenharmony_ci<li> 2265e5c31af7Sopenharmony_ci<p><a href="#VkMemoryToImageCopyEXT">VkMemoryToImageCopyEXT</a></p> 2266e5c31af7Sopenharmony_ci</li> 2267e5c31af7Sopenharmony_ci<li> 2268e5c31af7Sopenharmony_ci<p><a href="#VkSubresourceLayout2EXT">VkSubresourceLayout2EXT</a></p> 2269e5c31af7Sopenharmony_ci</li> 2270e5c31af7Sopenharmony_ci<li> 2271e5c31af7Sopenharmony_ci<p>Extending <a href="#VkImageFormatProperties2">VkImageFormatProperties2</a>:</p> 2272e5c31af7Sopenharmony_ci<div class="ulist"> 2273e5c31af7Sopenharmony_ci<ul> 2274e5c31af7Sopenharmony_ci<li> 2275e5c31af7Sopenharmony_ci<p><a href="#VkHostImageCopyDevicePerformanceQueryEXT">VkHostImageCopyDevicePerformanceQueryEXT</a></p> 2276e5c31af7Sopenharmony_ci</li> 2277e5c31af7Sopenharmony_ci</ul> 2278e5c31af7Sopenharmony_ci</div> 2279e5c31af7Sopenharmony_ci</li> 2280e5c31af7Sopenharmony_ci<li> 2281e5c31af7Sopenharmony_ci<p>Extending <a href="#VkPhysicalDeviceFeatures2">VkPhysicalDeviceFeatures2</a>, <a href="#VkDeviceCreateInfo">VkDeviceCreateInfo</a>:</p> 2282e5c31af7Sopenharmony_ci<div class="ulist"> 2283e5c31af7Sopenharmony_ci<ul> 2284e5c31af7Sopenharmony_ci<li> 2285e5c31af7Sopenharmony_ci<p><a href="#VkPhysicalDeviceHostImageCopyFeaturesEXT">VkPhysicalDeviceHostImageCopyFeaturesEXT</a></p> 2286e5c31af7Sopenharmony_ci</li> 2287e5c31af7Sopenharmony_ci</ul> 2288e5c31af7Sopenharmony_ci</div> 2289e5c31af7Sopenharmony_ci</li> 2290e5c31af7Sopenharmony_ci<li> 2291e5c31af7Sopenharmony_ci<p>Extending <a href="#VkPhysicalDeviceProperties2">VkPhysicalDeviceProperties2</a>:</p> 2292e5c31af7Sopenharmony_ci<div class="ulist"> 2293e5c31af7Sopenharmony_ci<ul> 2294e5c31af7Sopenharmony_ci<li> 2295e5c31af7Sopenharmony_ci<p><a href="#VkPhysicalDeviceHostImageCopyPropertiesEXT">VkPhysicalDeviceHostImageCopyPropertiesEXT</a></p> 2296e5c31af7Sopenharmony_ci</li> 2297e5c31af7Sopenharmony_ci</ul> 2298e5c31af7Sopenharmony_ci</div> 2299e5c31af7Sopenharmony_ci</li> 2300e5c31af7Sopenharmony_ci<li> 2301e5c31af7Sopenharmony_ci<p>Extending <a href="#VkSubresourceLayout2KHR">VkSubresourceLayout2KHR</a>:</p> 2302e5c31af7Sopenharmony_ci<div class="ulist"> 2303e5c31af7Sopenharmony_ci<ul> 2304e5c31af7Sopenharmony_ci<li> 2305e5c31af7Sopenharmony_ci<p><a href="#VkSubresourceHostMemcpySizeEXT">VkSubresourceHostMemcpySizeEXT</a></p> 2306e5c31af7Sopenharmony_ci</li> 2307e5c31af7Sopenharmony_ci</ul> 2308e5c31af7Sopenharmony_ci</div> 2309e5c31af7Sopenharmony_ci</li> 2310e5c31af7Sopenharmony_ci</ul> 2311e5c31af7Sopenharmony_ci</div> 2312e5c31af7Sopenharmony_ci</div> 2313e5c31af7Sopenharmony_ci<div class="sect3"> 2314e5c31af7Sopenharmony_ci<h4 id="_new_enums"><a class="anchor" href="#_new_enums"></a>New Enums</h4> 2315e5c31af7Sopenharmony_ci<div class="ulist"> 2316e5c31af7Sopenharmony_ci<ul> 2317e5c31af7Sopenharmony_ci<li> 2318e5c31af7Sopenharmony_ci<p><a href="#VkHostImageCopyFlagBitsEXT">VkHostImageCopyFlagBitsEXT</a></p> 2319e5c31af7Sopenharmony_ci</li> 2320e5c31af7Sopenharmony_ci</ul> 2321e5c31af7Sopenharmony_ci</div> 2322e5c31af7Sopenharmony_ci</div> 2323e5c31af7Sopenharmony_ci<div class="sect3"> 2324e5c31af7Sopenharmony_ci<h4 id="_new_bitmasks"><a class="anchor" href="#_new_bitmasks"></a>New Bitmasks</h4> 2325e5c31af7Sopenharmony_ci<div class="ulist"> 2326e5c31af7Sopenharmony_ci<ul> 2327e5c31af7Sopenharmony_ci<li> 2328e5c31af7Sopenharmony_ci<p><a href="#VkHostImageCopyFlagsEXT">VkHostImageCopyFlagsEXT</a></p> 2329e5c31af7Sopenharmony_ci</li> 2330e5c31af7Sopenharmony_ci</ul> 2331e5c31af7Sopenharmony_ci</div> 2332e5c31af7Sopenharmony_ci</div> 2333e5c31af7Sopenharmony_ci<div class="sect3"> 2334e5c31af7Sopenharmony_ci<h4 id="_new_enum_constants"><a class="anchor" href="#_new_enum_constants"></a>New Enum Constants</h4> 2335e5c31af7Sopenharmony_ci<div class="ulist"> 2336e5c31af7Sopenharmony_ci<ul> 2337e5c31af7Sopenharmony_ci<li> 2338e5c31af7Sopenharmony_ci<p><code>VK_EXT_HOST_IMAGE_COPY_EXTENSION_NAME</code></p> 2339e5c31af7Sopenharmony_ci</li> 2340e5c31af7Sopenharmony_ci<li> 2341e5c31af7Sopenharmony_ci<p><code>VK_EXT_HOST_IMAGE_COPY_SPEC_VERSION</code></p> 2342e5c31af7Sopenharmony_ci</li> 2343e5c31af7Sopenharmony_ci<li> 2344e5c31af7Sopenharmony_ci<p>Extending <a href="#VkFormatFeatureFlagBits2">VkFormatFeatureFlagBits2</a>:</p> 2345e5c31af7Sopenharmony_ci<div class="ulist"> 2346e5c31af7Sopenharmony_ci<ul> 2347e5c31af7Sopenharmony_ci<li> 2348e5c31af7Sopenharmony_ci<p><code>VK_FORMAT_FEATURE_2_HOST_IMAGE_TRANSFER_BIT_EXT</code></p> 2349e5c31af7Sopenharmony_ci</li> 2350e5c31af7Sopenharmony_ci</ul> 2351e5c31af7Sopenharmony_ci</div> 2352e5c31af7Sopenharmony_ci</li> 2353e5c31af7Sopenharmony_ci<li> 2354e5c31af7Sopenharmony_ci<p>Extending <a href="#VkImageUsageFlagBits">VkImageUsageFlagBits</a>:</p> 2355e5c31af7Sopenharmony_ci<div class="ulist"> 2356e5c31af7Sopenharmony_ci<ul> 2357e5c31af7Sopenharmony_ci<li> 2358e5c31af7Sopenharmony_ci<p><code>VK_IMAGE_USAGE_HOST_TRANSFER_BIT_EXT</code></p> 2359e5c31af7Sopenharmony_ci</li> 2360e5c31af7Sopenharmony_ci</ul> 2361e5c31af7Sopenharmony_ci</div> 2362e5c31af7Sopenharmony_ci</li> 2363e5c31af7Sopenharmony_ci<li> 2364e5c31af7Sopenharmony_ci<p>Extending <a href="#VkStructureType">VkStructureType</a>:</p> 2365e5c31af7Sopenharmony_ci<div class="ulist"> 2366e5c31af7Sopenharmony_ci<ul> 2367e5c31af7Sopenharmony_ci<li> 2368e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_COPY_IMAGE_TO_IMAGE_INFO_EXT</code></p> 2369e5c31af7Sopenharmony_ci</li> 2370e5c31af7Sopenharmony_ci<li> 2371e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_COPY_IMAGE_TO_MEMORY_INFO_EXT</code></p> 2372e5c31af7Sopenharmony_ci</li> 2373e5c31af7Sopenharmony_ci<li> 2374e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO_EXT</code></p> 2375e5c31af7Sopenharmony_ci</li> 2376e5c31af7Sopenharmony_ci<li> 2377e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT</code></p> 2378e5c31af7Sopenharmony_ci</li> 2379e5c31af7Sopenharmony_ci<li> 2380e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT</code></p> 2381e5c31af7Sopenharmony_ci</li> 2382e5c31af7Sopenharmony_ci<li> 2383e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_IMAGE_TO_MEMORY_COPY_EXT</code></p> 2384e5c31af7Sopenharmony_ci</li> 2385e5c31af7Sopenharmony_ci<li> 2386e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY_EXT</code></p> 2387e5c31af7Sopenharmony_ci</li> 2388e5c31af7Sopenharmony_ci<li> 2389e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT</code></p> 2390e5c31af7Sopenharmony_ci</li> 2391e5c31af7Sopenharmony_ci<li> 2392e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT</code></p> 2393e5c31af7Sopenharmony_ci</li> 2394e5c31af7Sopenharmony_ci<li> 2395e5c31af7Sopenharmony_ci<p><code>VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE_EXT</code></p> 2396e5c31af7Sopenharmony_ci</li> 2397e5c31af7Sopenharmony_ci</ul> 2398e5c31af7Sopenharmony_ci</div> 2399e5c31af7Sopenharmony_ci</li> 2400e5c31af7Sopenharmony_ci</ul> 2401e5c31af7Sopenharmony_ci</div> 2402e5c31af7Sopenharmony_ci</div> 2403e5c31af7Sopenharmony_ci<div class="sect3"> 2404e5c31af7Sopenharmony_ci<h4 id="_issues"><a class="anchor" href="#_issues"></a>Issues</h4> 2405e5c31af7Sopenharmony_ci<div class="paragraph"> 2406e5c31af7Sopenharmony_ci<p>1) Natoque penatibus et magnis dis parturient montes nascetur.</p> 2407e5c31af7Sopenharmony_ci</div> 2408e5c31af7Sopenharmony_ci<div class="paragraph"> 2409e5c31af7Sopenharmony_ci<p><strong>RESOLVED</strong>: Iaculis eu non diam phasellus vestibulum. Consequat nisl vel 2410e5c31af7Sopenharmony_cipretium lectus quam. Euismod in pellentesque massa placerat duis ultricies 2411e5c31af7Sopenharmony_cilacus sed turpis. Ullamcorper eget nulla facilisi etiam dignissim diam quis 2412e5c31af7Sopenharmony_cienim. Id velit ut tortor pretium viverra suspendisse potenti.</p> 2413e5c31af7Sopenharmony_ci</div> 2414e5c31af7Sopenharmony_ci<div class="paragraph"> 2415e5c31af7Sopenharmony_ci<p>2) Faucibus in ornare quam viverra orci sagittis eu volutpat?</p> 2416e5c31af7Sopenharmony_ci</div> 2417e5c31af7Sopenharmony_ci<div class="paragraph"> 2418e5c31af7Sopenharmony_ci<p><strong>RESOLVED</strong>: Eu facilisis sed odio morbi quis commodo. Pharetra magna ac 2419e5c31af7Sopenharmony_ciplacerat vestibulum lectus mauris. Ac felis donec et odio pellentesque diam 2420e5c31af7Sopenharmony_civolutpat commodo sed.</p> 2421e5c31af7Sopenharmony_ci</div> 2422e5c31af7Sopenharmony_ci</div> 2423e5c31af7Sopenharmony_ci<div class="sect3"> 2424e5c31af7Sopenharmony_ci<h4 id="_version_history"><a class="anchor" href="#_version_history"></a>Version History</h4> 2425e5c31af7Sopenharmony_ci<div class="ulist"> 2426e5c31af7Sopenharmony_ci<ul> 2427e5c31af7Sopenharmony_ci<li> 2428e5c31af7Sopenharmony_ci<p>Revision 0, 2173-05-30 (Htiaf Dnartske)</p> 2429e5c31af7Sopenharmony_ci<div class="ulist"> 2430e5c31af7Sopenharmony_ci<ul> 2431e5c31af7Sopenharmony_ci<li> 2432e5c31af7Sopenharmony_ci<p>Malesuada pellentesque elit eget gravida cum sociis natoque</p> 2433e5c31af7Sopenharmony_ci</li> 2434e5c31af7Sopenharmony_ci</ul> 2435e5c31af7Sopenharmony_ci</div> 2436e5c31af7Sopenharmony_ci</li> 2437e5c31af7Sopenharmony_ci<li> 2438e5c31af7Sopenharmony_ci<p>Revision 1, 2185-12-01 (Zabhash Ifessouy)</p> 2439e5c31af7Sopenharmony_ci<div class="ulist"> 2440e5c31af7Sopenharmony_ci<ul> 2441e5c31af7Sopenharmony_ci<li> 2442e5c31af7Sopenharmony_ci<p>Id leo in vitae turpis massa sed elementum</p> 2443e5c31af7Sopenharmony_ci</li> 2444e5c31af7Sopenharmony_ci</ul> 2445e5c31af7Sopenharmony_ci</div> 2446e5c31af7Sopenharmony_ci</li> 2447e5c31af7Sopenharmony_ci</ul> 2448e5c31af7Sopenharmony_ci</div> 2449e5c31af7Sopenharmony_ci</div> 2450e5c31af7Sopenharmony_ci</div> 2451e5c31af7Sopenharmony_ci</div> 2452e5c31af7Sopenharmony_ci</div> 2453e5c31af7Sopenharmony_ci</div> 2454e5c31af7Sopenharmony_ci<div id="footer"> 2455e5c31af7Sopenharmony_ci<div id="footer-text"> 2456e5c31af7Sopenharmony_ciVersion 1.2.3<br> 2457e5c31af7Sopenharmony_ci</div> 2458e5c31af7Sopenharmony_ci</div> 2459e5c31af7Sopenharmony_ci 2460e5c31af7Sopenharmony_ci 2461e5c31af7Sopenharmony_ci</body> 2462e5c31af7Sopenharmony_ci</html>