[{"data":1,"prerenderedAt":630},["ShallowReactive",2],{"$fvelMRMCKGxP9TqgEt4uMm0F1tGbzsXpT7iNaJHfXeoo":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":629,"_id":4},"vkGetSwapchainTimingPropertiesEXT","Obtain the display timing properties of the PE's display","VK_EXT_present_timing","protos",[],{"type":10,"children":11,"toc":627},"root",[12,20,25,329,400,452,597,621],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17],{"type":18,"value":19},"text","The implementation maintains an internal monotonically increasing counter\nwhich updates when the presentation engine’s timing properties are modified.",{"type":13,"tag":14,"props":21,"children":22},{},[23],{"type":18,"value":24},"To query the presentation engine’s current timing properties for a given\nswapchain, call:",{"type":13,"tag":26,"props":27,"children":28},"code-group",{},[29,145],{"type":13,"tag":30,"props":31,"children":37},"pre",{"className":32,"code":33,"filename":34,"language":35,"meta":36,"style":36},"language-c shiki shiki-themes github-light-default github-dark-default","VkResult vkGetSwapchainTimingPropertiesEXT(\n VkDevice device,\n VkSwapchainKHR swapchain,\n VkSwapchainTimingPropertiesEXT* pSwapchainTimingProperties,\n uint64_t* pSwapchainTimingPropertiesCounter);\n","C","c","",[38],{"type":13,"tag":39,"props":40,"children":41},"code",{"__ignoreMap":36},[42,64,84,102,126],{"type":13,"tag":43,"props":44,"children":47},"span",{"class":45,"line":46},"line",1,[48,54,59],{"type":13,"tag":43,"props":49,"children":51},{"style":50},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[52],{"type":18,"value":53},"VkResult ",{"type":13,"tag":43,"props":55,"children":57},{"style":56},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[58],{"type":18,"value":4},{"type":13,"tag":43,"props":60,"children":61},{"style":50},[62],{"type":18,"value":63},"(\n",{"type":13,"tag":43,"props":65,"children":67},{"class":45,"line":66},2,[68,73,79],{"type":13,"tag":43,"props":69,"children":70},{"style":50},[71],{"type":18,"value":72}," VkDevice ",{"type":13,"tag":43,"props":74,"children":76},{"style":75},"--shiki-default:#953800;--shiki-dark:#FFA657",[77],{"type":18,"value":78},"device",{"type":13,"tag":43,"props":80,"children":81},{"style":50},[82],{"type":18,"value":83},",\n",{"type":13,"tag":43,"props":85,"children":87},{"class":45,"line":86},3,[88,93,98],{"type":13,"tag":43,"props":89,"children":90},{"style":50},[91],{"type":18,"value":92}," VkSwapchainKHR ",{"type":13,"tag":43,"props":94,"children":95},{"style":75},[96],{"type":18,"value":97},"swapchain",{"type":13,"tag":43,"props":99,"children":100},{"style":50},[101],{"type":18,"value":83},{"type":13,"tag":43,"props":103,"children":105},{"class":45,"line":104},4,[106,111,117,122],{"type":13,"tag":43,"props":107,"children":108},{"style":50},[109],{"type":18,"value":110}," VkSwapchainTimingPropertiesEXT",{"type":13,"tag":43,"props":112,"children":114},{"style":113},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[115],{"type":18,"value":116},"*",{"type":13,"tag":43,"props":118,"children":119},{"style":75},[120],{"type":18,"value":121}," pSwapchainTimingProperties",{"type":13,"tag":43,"props":123,"children":124},{"style":50},[125],{"type":18,"value":83},{"type":13,"tag":43,"props":127,"children":129},{"class":45,"line":128},5,[130,135,140],{"type":13,"tag":43,"props":131,"children":132},{"style":113},[133],{"type":18,"value":134}," uint64_t*",{"type":13,"tag":43,"props":136,"children":137},{"style":75},[138],{"type":18,"value":139}," pSwapchainTimingPropertiesCounter",{"type":13,"tag":43,"props":141,"children":142},{"style":50},[143],{"type":18,"value":144},");\n",{"type":13,"tag":30,"props":146,"children":151},{"className":147,"code":148,"filename":149,"language":150,"meta":36,"style":36},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn get_swapchain_timing_properties_ext(\n device: vk::Device,\n swapchain: vk::SwapchainKHR,\n p_swapchain_timing_properties: *mut vk::SwapchainTimingPropertiesEXT,\n p_swapchain_timing_properties_counter: *mut u64,\n) -> vk::Result;\n","Rust","rs",[152],{"type":13,"tag":39,"props":153,"children":154},{"__ignoreMap":36},[155,177,209,238,272,297],{"type":13,"tag":43,"props":156,"children":157},{"class":45,"line":46},[158,163,168,173],{"type":13,"tag":43,"props":159,"children":160},{"style":113},[161],{"type":18,"value":162},"pub",{"type":13,"tag":43,"props":164,"children":165},{"style":113},[166],{"type":18,"value":167}," fn",{"type":13,"tag":43,"props":169,"children":170},{"style":56},[171],{"type":18,"value":172}," get_swapchain_timing_properties_ext",{"type":13,"tag":43,"props":174,"children":175},{"style":50},[176],{"type":18,"value":63},{"type":13,"tag":43,"props":178,"children":179},{"class":45,"line":66},[180,185,190,195,200,205],{"type":13,"tag":43,"props":181,"children":182},{"style":50},[183],{"type":18,"value":184}," device",{"type":13,"tag":43,"props":186,"children":187},{"style":113},[188],{"type":18,"value":189},":",{"type":13,"tag":43,"props":191,"children":192},{"style":75},[193],{"type":18,"value":194}," vk",{"type":13,"tag":43,"props":196,"children":197},{"style":113},[198],{"type":18,"value":199},"::",{"type":13,"tag":43,"props":201,"children":202},{"style":75},[203],{"type":18,"value":204},"Device",{"type":13,"tag":43,"props":206,"children":207},{"style":50},[208],{"type":18,"value":83},{"type":13,"tag":43,"props":210,"children":211},{"class":45,"line":86},[212,217,221,225,229,234],{"type":13,"tag":43,"props":213,"children":214},{"style":50},[215],{"type":18,"value":216}," swapchain",{"type":13,"tag":43,"props":218,"children":219},{"style":113},[220],{"type":18,"value":189},{"type":13,"tag":43,"props":222,"children":223},{"style":75},[224],{"type":18,"value":194},{"type":13,"tag":43,"props":226,"children":227},{"style":113},[228],{"type":18,"value":199},{"type":13,"tag":43,"props":230,"children":231},{"style":75},[232],{"type":18,"value":233},"SwapchainKHR",{"type":13,"tag":43,"props":235,"children":236},{"style":50},[237],{"type":18,"value":83},{"type":13,"tag":43,"props":239,"children":240},{"class":45,"line":104},[241,246,250,255,259,263,268],{"type":13,"tag":43,"props":242,"children":243},{"style":50},[244],{"type":18,"value":245}," p_swapchain_timing_properties",{"type":13,"tag":43,"props":247,"children":248},{"style":113},[249],{"type":18,"value":189},{"type":13,"tag":43,"props":251,"children":252},{"style":113},[253],{"type":18,"value":254}," *mut",{"type":13,"tag":43,"props":256,"children":257},{"style":75},[258],{"type":18,"value":194},{"type":13,"tag":43,"props":260,"children":261},{"style":113},[262],{"type":18,"value":199},{"type":13,"tag":43,"props":264,"children":265},{"style":75},[266],{"type":18,"value":267},"SwapchainTimingPropertiesEXT",{"type":13,"tag":43,"props":269,"children":270},{"style":50},[271],{"type":18,"value":83},{"type":13,"tag":43,"props":273,"children":274},{"class":45,"line":128},[275,280,284,288,293],{"type":13,"tag":43,"props":276,"children":277},{"style":50},[278],{"type":18,"value":279}," p_swapchain_timing_properties_counter",{"type":13,"tag":43,"props":281,"children":282},{"style":113},[283],{"type":18,"value":189},{"type":13,"tag":43,"props":285,"children":286},{"style":113},[287],{"type":18,"value":254},{"type":13,"tag":43,"props":289,"children":290},{"style":75},[291],{"type":18,"value":292}," u64",{"type":13,"tag":43,"props":294,"children":295},{"style":50},[296],{"type":18,"value":83},{"type":13,"tag":43,"props":298,"children":300},{"class":45,"line":299},6,[301,306,311,315,319,324],{"type":13,"tag":43,"props":302,"children":303},{"style":50},[304],{"type":18,"value":305},") ",{"type":13,"tag":43,"props":307,"children":308},{"style":113},[309],{"type":18,"value":310},"->",{"type":13,"tag":43,"props":312,"children":313},{"style":75},[314],{"type":18,"value":194},{"type":13,"tag":43,"props":316,"children":317},{"style":113},[318],{"type":18,"value":199},{"type":13,"tag":43,"props":320,"children":321},{"style":75},[322],{"type":18,"value":323},"Result",{"type":13,"tag":43,"props":325,"children":326},{"style":50},[327],{"type":18,"value":328},";\n",{"type":13,"tag":330,"props":331,"children":332},"ul",{},[333,351,361,381],{"type":13,"tag":334,"props":335,"children":336},"li",{},[337,342,344,349],{"type":13,"tag":39,"props":338,"children":340},{"className":339},[],[341],{"type":18,"value":78},{"type":18,"value":343}," is the device associated with ",{"type":13,"tag":39,"props":345,"children":347},{"className":346},[],[348],{"type":18,"value":97},{"type":18,"value":350},".",{"type":13,"tag":334,"props":352,"children":353},{},[354,359],{"type":13,"tag":39,"props":355,"children":357},{"className":356},[],[358],{"type":18,"value":97},{"type":18,"value":360}," is the swapchain to obtain timing properties for.",{"type":13,"tag":334,"props":362,"children":363},{},[364,370,372,379],{"type":13,"tag":39,"props":365,"children":367},{"className":366},[],[368],{"type":18,"value":369},"pSwapchainTimingProperties",{"type":18,"value":371}," is a pointer to an instance of the\n",{"type":13,"tag":373,"props":374,"children":376},"a",{"href":375},"/man/VkSwapchainTimingPropertiesEXT",[377],{"type":18,"value":378},"VkSwapchainTimingPropertiesEXT",{"type":18,"value":380}," structure.",{"type":13,"tag":334,"props":382,"children":383},{},[384,390,392,398],{"type":13,"tag":39,"props":385,"children":387},{"className":386},[],[388],{"type":18,"value":389},"pSwapchainTimingPropertiesCounter",{"type":18,"value":391}," is ",{"type":13,"tag":39,"props":393,"children":395},{"className":394},[],[396],{"type":18,"value":397},"NULL",{"type":18,"value":399}," or a pointer to a\n64-bit unsigned integer set by the implementation to the current value\nof the swapchain’s internal timing properties counter.",{"type":13,"tag":14,"props":401,"children":402},{},[403,405,410,412,418,420,425,427,432,434,439,441,444,446,451],{"type":18,"value":404},"If ",{"type":13,"tag":39,"props":406,"children":408},{"className":407},[],[409],{"type":18,"value":4},{"type":18,"value":411}," returns ",{"type":13,"tag":39,"props":413,"children":415},{"className":414},[],[416],{"type":18,"value":417},"VK_NOT_READY",{"type":18,"value":419},", the\nimplementation was not able to determine the current refresh cycle duration.\nSome platforms ",{"type":13,"tag":421,"props":422,"children":424},"normative",{"type":423},"may",[],{"type":18,"value":426}," not provide timing properties until after at least one\nimage has been presented to the ",{"type":13,"tag":39,"props":428,"children":430},{"className":429},[],[431],{"type":18,"value":97},{"type":18,"value":433},".\nIf timing properties change for the ",{"type":13,"tag":39,"props":435,"children":437},{"className":436},[],[438],{"type":18,"value":97},{"type":18,"value":440},", these platforms ",{"type":13,"tag":421,"props":442,"children":443},{"type":423},[],{"type":18,"value":445},"\nnot provide updated results until after at least one additional image has\nbeen presented to the ",{"type":13,"tag":39,"props":447,"children":449},{"className":448},[],[450],{"type":18,"value":97},{"type":18,"value":350},{"type":13,"tag":453,"props":454,"children":456},"validity-group",{"name":455},"Valid Usage (Implicit)",[457,486,510,534,574],{"type":13,"tag":458,"props":459,"children":461},"validity-field",{"name":460},"VUID-vkGetSwapchainTimingPropertiesEXT-device-parameter",[462],{"type":13,"tag":14,"props":463,"children":464},{},[465,470,472,476,478,484],{"type":13,"tag":39,"props":466,"children":468},{"className":467},[],[469],{"type":18,"value":78},{"type":18,"value":471}," ",{"type":13,"tag":421,"props":473,"children":475},{"type":474},"must",[],{"type":18,"value":477}," be a valid ",{"type":13,"tag":373,"props":479,"children":481},{"href":480},"/man/VkDevice",[482],{"type":18,"value":483},"VkDevice",{"type":18,"value":485}," handle",{"type":13,"tag":458,"props":487,"children":489},{"name":488},"VUID-vkGetSwapchainTimingPropertiesEXT-swapchain-parameter",[490],{"type":13,"tag":14,"props":491,"children":492},{},[493,498,499,502,503,509],{"type":13,"tag":39,"props":494,"children":496},{"className":495},[],[497],{"type":18,"value":97},{"type":18,"value":471},{"type":13,"tag":421,"props":500,"children":501},{"type":474},[],{"type":18,"value":477},{"type":13,"tag":373,"props":504,"children":506},{"href":505},"/man/VkSwapchainKHR",[507],{"type":18,"value":508},"VkSwapchainKHR",{"type":18,"value":485},{"type":13,"tag":458,"props":511,"children":513},{"name":512},"VUID-vkGetSwapchainTimingPropertiesEXT-pSwapchainTimingProperties-parameter",[514],{"type":13,"tag":14,"props":515,"children":516},{},[517,522,523,526,528,532],{"type":13,"tag":39,"props":518,"children":520},{"className":519},[],[521],{"type":18,"value":369},{"type":18,"value":471},{"type":13,"tag":421,"props":524,"children":525},{"type":474},[],{"type":18,"value":527}," be a valid pointer to a ",{"type":13,"tag":373,"props":529,"children":530},{"href":375},[531],{"type":18,"value":378},{"type":18,"value":533}," structure",{"type":13,"tag":458,"props":535,"children":537},{"name":536},"VUID-vkGetSwapchainTimingPropertiesEXT-pSwapchainTimingPropertiesCounter-parameter",[538],{"type":13,"tag":14,"props":539,"children":540},{},[541,542,547,549,554,556,561,562,565,566,572],{"type":18,"value":404},{"type":13,"tag":39,"props":543,"children":545},{"className":544},[],[546],{"type":18,"value":389},{"type":18,"value":548}," is not ",{"type":13,"tag":39,"props":550,"children":552},{"className":551},[],[553],{"type":18,"value":397},{"type":18,"value":555},", ",{"type":13,"tag":39,"props":557,"children":559},{"className":558},[],[560],{"type":18,"value":389},{"type":18,"value":471},{"type":13,"tag":421,"props":563,"children":564},{"type":474},[],{"type":18,"value":527},{"type":13,"tag":39,"props":567,"children":569},{"className":568},[],[570],{"type":18,"value":571},"uint64_t",{"type":18,"value":573}," value",{"type":13,"tag":458,"props":575,"children":577},{"name":576},"VUID-vkGetSwapchainTimingPropertiesEXT-swapchain-parent",[578],{"type":13,"tag":14,"props":579,"children":580},{},[581,586,587,590,592],{"type":13,"tag":39,"props":582,"children":584},{"className":583},[],[585],{"type":18,"value":97},{"type":18,"value":471},{"type":13,"tag":421,"props":588,"children":589},{"type":474},[],{"type":18,"value":591}," have been created, allocated, or retrieved from ",{"type":13,"tag":39,"props":593,"children":595},{"className":594},[],[596],{"type":18,"value":78},{"type":13,"tag":598,"props":599,"children":601},"validity-box",{"name":600},"Host Synchronization",[602],{"type":13,"tag":330,"props":603,"children":604},{},[605],{"type":13,"tag":334,"props":606,"children":607},{},[608,610,615,616,619],{"type":18,"value":609},"Host access to ",{"type":13,"tag":39,"props":611,"children":613},{"className":612},[],[614],{"type":18,"value":97},{"type":18,"value":471},{"type":13,"tag":421,"props":617,"children":618},{"type":474},[],{"type":18,"value":620}," be externally synchronized",{"type":13,"tag":622,"props":623,"children":624},"style",{},[625],{"type":18,"value":626},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":36,"searchDepth":66,"depth":66,"links":628},[],"markdown",1773121650644]