[{"data":1,"prerenderedAt":685},["ShallowReactive",2],{"42vm9LB2CZ":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":684,"_id":4},"VkSemaphoreGetWin32HandleInfoKHR","Structure describing a Win32 handle semaphore export operation","VK_KHR_external_semaphore_win32","structs",[],{"type":10,"children":11,"toc":682},"root",[12,28,268,341,359,577,676],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,26],{"type":18,"value":19},"text","The ",{"type":13,"tag":21,"props":22,"children":24},"code",{"className":23},[],[25],{"type":18,"value":4},{"type":18,"value":27}," structure is defined as:",{"type":13,"tag":29,"props":30,"children":31},"code-group",{},[32,122],{"type":13,"tag":33,"props":34,"children":40},"pre",{"className":35,"code":36,"filename":37,"language":38,"meta":39,"style":39},"language-c shiki shiki-themes github-light-default github-dark-default","typedef struct VkSemaphoreGetWin32HandleInfoKHR {\n VkStructureType sType;\n const void* pNext;\n VkSemaphore semaphore;\n VkExternalSemaphoreHandleTypeFlagBits handleType;\n} VkSemaphoreGetWin32HandleInfoKHR;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,76,95,104,113],{"type":13,"tag":45,"props":46,"children":49},"span",{"class":47,"line":48},"line",1,[50,56,61],{"type":13,"tag":45,"props":51,"children":53},{"style":52},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[54],{"type":18,"value":55},"typedef",{"type":13,"tag":45,"props":57,"children":58},{"style":52},[59],{"type":18,"value":60}," struct",{"type":13,"tag":45,"props":62,"children":64},{"style":63},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[65],{"type":18,"value":66}," VkSemaphoreGetWin32HandleInfoKHR {\n",{"type":13,"tag":45,"props":68,"children":70},{"class":47,"line":69},2,[71],{"type":13,"tag":45,"props":72,"children":73},{"style":63},[74],{"type":18,"value":75}," VkStructureType sType;\n",{"type":13,"tag":45,"props":77,"children":79},{"class":47,"line":78},3,[80,85,90],{"type":13,"tag":45,"props":81,"children":82},{"style":52},[83],{"type":18,"value":84}," const",{"type":13,"tag":45,"props":86,"children":87},{"style":52},[88],{"type":18,"value":89}," void*",{"type":13,"tag":45,"props":91,"children":92},{"style":63},[93],{"type":18,"value":94}," pNext;\n",{"type":13,"tag":45,"props":96,"children":98},{"class":47,"line":97},4,[99],{"type":13,"tag":45,"props":100,"children":101},{"style":63},[102],{"type":18,"value":103}," VkSemaphore semaphore;\n",{"type":13,"tag":45,"props":105,"children":107},{"class":47,"line":106},5,[108],{"type":13,"tag":45,"props":109,"children":110},{"style":63},[111],{"type":18,"value":112}," VkExternalSemaphoreHandleTypeFlagBits handleType;\n",{"type":13,"tag":45,"props":114,"children":116},{"class":47,"line":115},6,[117],{"type":13,"tag":45,"props":118,"children":119},{"style":63},[120],{"type":18,"value":121},"} VkSemaphoreGetWin32HandleInfoKHR;\n",{"type":13,"tag":33,"props":123,"children":128},{"className":124,"code":125,"filename":126,"language":127,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct SemaphoreGetWin32HandleInfoKHR {\n s_type: vk::StructureType,\n p_next: *const c_void,\n semaphore: vk::Semaphore,\n handle_type: ExternalSemaphoreHandleTypeFlags,\n}\n","Rust","rs",[129],{"type":13,"tag":21,"props":130,"children":131},{"__ignoreMap":39},[132,155,188,210,239,260],{"type":13,"tag":45,"props":133,"children":134},{"class":47,"line":48},[135,140,144,150],{"type":13,"tag":45,"props":136,"children":137},{"style":52},[138],{"type":18,"value":139},"pub",{"type":13,"tag":45,"props":141,"children":142},{"style":52},[143],{"type":18,"value":60},{"type":13,"tag":45,"props":145,"children":147},{"style":146},"--shiki-default:#953800;--shiki-dark:#FFA657",[148],{"type":18,"value":149}," SemaphoreGetWin32HandleInfoKHR",{"type":13,"tag":45,"props":151,"children":152},{"style":63},[153],{"type":18,"value":154}," {\n",{"type":13,"tag":45,"props":156,"children":157},{"class":47,"line":69},[158,163,168,173,178,183],{"type":13,"tag":45,"props":159,"children":160},{"style":63},[161],{"type":18,"value":162}," s_type",{"type":13,"tag":45,"props":164,"children":165},{"style":52},[166],{"type":18,"value":167},":",{"type":13,"tag":45,"props":169,"children":170},{"style":146},[171],{"type":18,"value":172}," vk",{"type":13,"tag":45,"props":174,"children":175},{"style":52},[176],{"type":18,"value":177},"::",{"type":13,"tag":45,"props":179,"children":180},{"style":146},[181],{"type":18,"value":182},"StructureType",{"type":13,"tag":45,"props":184,"children":185},{"style":63},[186],{"type":18,"value":187},",\n",{"type":13,"tag":45,"props":189,"children":190},{"class":47,"line":78},[191,196,200,205],{"type":13,"tag":45,"props":192,"children":193},{"style":63},[194],{"type":18,"value":195}," p_next",{"type":13,"tag":45,"props":197,"children":198},{"style":52},[199],{"type":18,"value":167},{"type":13,"tag":45,"props":201,"children":202},{"style":52},[203],{"type":18,"value":204}," *const",{"type":13,"tag":45,"props":206,"children":207},{"style":63},[208],{"type":18,"value":209}," c_void,\n",{"type":13,"tag":45,"props":211,"children":212},{"class":47,"line":97},[213,218,222,226,230,235],{"type":13,"tag":45,"props":214,"children":215},{"style":63},[216],{"type":18,"value":217}," semaphore",{"type":13,"tag":45,"props":219,"children":220},{"style":52},[221],{"type":18,"value":167},{"type":13,"tag":45,"props":223,"children":224},{"style":146},[225],{"type":18,"value":172},{"type":13,"tag":45,"props":227,"children":228},{"style":52},[229],{"type":18,"value":177},{"type":13,"tag":45,"props":231,"children":232},{"style":146},[233],{"type":18,"value":234},"Semaphore",{"type":13,"tag":45,"props":236,"children":237},{"style":63},[238],{"type":18,"value":187},{"type":13,"tag":45,"props":240,"children":241},{"class":47,"line":106},[242,247,251,256],{"type":13,"tag":45,"props":243,"children":244},{"style":63},[245],{"type":18,"value":246}," handle_type",{"type":13,"tag":45,"props":248,"children":249},{"style":52},[250],{"type":18,"value":167},{"type":13,"tag":45,"props":252,"children":253},{"style":146},[254],{"type":18,"value":255}," ExternalSemaphoreHandleTypeFlags",{"type":13,"tag":45,"props":257,"children":258},{"style":63},[259],{"type":18,"value":187},{"type":13,"tag":45,"props":261,"children":262},{"class":47,"line":115},[263],{"type":13,"tag":45,"props":264,"children":265},{"style":63},[266],{"type":18,"value":267},"}\n",{"type":13,"tag":269,"props":270,"children":271},"ul",{},[272,293,312,323],{"type":13,"tag":273,"props":274,"children":275},"li",{},[276,282,284,291],{"type":13,"tag":21,"props":277,"children":279},{"className":278},[],[280],{"type":18,"value":281},"sType",{"type":18,"value":283}," is a ",{"type":13,"tag":285,"props":286,"children":288},"a",{"href":287},"/man/VkStructureType",[289],{"type":18,"value":290},"VkStructureType",{"type":18,"value":292}," value identifying this structure.",{"type":13,"tag":273,"props":294,"children":295},{},[296,302,304,310],{"type":13,"tag":21,"props":297,"children":299},{"className":298},[],[300],{"type":18,"value":301},"pNext",{"type":18,"value":303}," is ",{"type":13,"tag":21,"props":305,"children":307},{"className":306},[],[308],{"type":18,"value":309},"NULL",{"type":18,"value":311}," or a pointer to a structure extending this\nstructure.",{"type":13,"tag":273,"props":313,"children":314},{},[315,321],{"type":13,"tag":21,"props":316,"children":318},{"className":317},[],[319],{"type":18,"value":320},"semaphore",{"type":18,"value":322}," is the semaphore from which state will be exported.",{"type":13,"tag":273,"props":324,"children":325},{},[326,332,333,339],{"type":13,"tag":21,"props":327,"children":329},{"className":328},[],[330],{"type":18,"value":331},"handleType",{"type":18,"value":283},{"type":13,"tag":285,"props":334,"children":336},{"href":335},"/man/VkExternalSemaphoreHandleTypeFlagBits",[337],{"type":18,"value":338},"VkExternalSemaphoreHandleTypeFlagBits",{"type":18,"value":340}," value\nspecifying the type of handle requested.",{"type":13,"tag":14,"props":342,"children":343},{},[344,346,351,353,357],{"type":18,"value":345},"The properties of the handle returned depend on the value of\n",{"type":13,"tag":21,"props":347,"children":349},{"className":348},[],[350],{"type":18,"value":331},{"type":18,"value":352},".\nSee ",{"type":13,"tag":285,"props":354,"children":355},{"href":335},[356],{"type":18,"value":338},{"type":18,"value":358}," for a description of the\nproperties of the defined external semaphore handle types.",{"type":13,"tag":360,"props":361,"children":363},"validity-group",{"name":362},"Valid Usage",[364,408,448,494,525,559],{"type":13,"tag":365,"props":366,"children":368},"validity-field",{"name":367},"VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-01126",[369],{"type":13,"tag":14,"props":370,"children":371},{},[372,377,379,384,386,392,393,399,401,406],{"type":13,"tag":21,"props":373,"children":375},{"className":374},[],[376],{"type":18,"value":331},{"type":18,"value":378}," ",{"type":13,"tag":380,"props":381,"children":383},"normative",{"type":382},"must",[],{"type":18,"value":385}," have been included in\n",{"type":13,"tag":285,"props":387,"children":389},{"href":388},"/man/VkExportSemaphoreCreateInfo",[390],{"type":18,"value":391},"VkExportSemaphoreCreateInfo",{"type":18,"value":177},{"type":13,"tag":21,"props":394,"children":396},{"className":395},[],[397],{"type":18,"value":398},"handleTypes",{"type":18,"value":400}," when the\n",{"type":13,"tag":21,"props":402,"children":404},{"className":403},[],[405],{"type":18,"value":320},{"type":18,"value":407},"’s current payload was created",{"type":13,"tag":365,"props":409,"children":411},{"name":410},"VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-01127",[412],{"type":13,"tag":14,"props":413,"children":414},{},[415,417,422,424,430,431,434,436,441,443],{"type":18,"value":416},"If ",{"type":13,"tag":21,"props":418,"children":420},{"className":419},[],[421],{"type":18,"value":331},{"type":18,"value":423}," is defined as an NT handle,\n",{"type":13,"tag":285,"props":425,"children":427},{"href":426},"/man/vkGetSemaphoreWin32HandleKHR",[428],{"type":18,"value":429},"vkGetSemaphoreWin32HandleKHR",{"type":18,"value":378},{"type":13,"tag":380,"props":432,"children":433},{"type":382},[],{"type":18,"value":435}," be called no more than once for\neach valid unique combination of ",{"type":13,"tag":21,"props":437,"children":439},{"className":438},[],[440],{"type":18,"value":320},{"type":18,"value":442}," and ",{"type":13,"tag":21,"props":444,"children":446},{"className":445},[],[447],{"type":18,"value":331},{"type":13,"tag":365,"props":449,"children":451},{"name":450},"VUID-VkSemaphoreGetWin32HandleInfoKHR-semaphore-01128",[452],{"type":13,"tag":14,"props":453,"children":454},{},[455,460,461,464,466,472,474,480,481,487,489],{"type":13,"tag":21,"props":456,"children":458},{"className":457},[],[459],{"type":18,"value":320},{"type":18,"value":378},{"type":13,"tag":380,"props":462,"children":463},{"type":382},[],{"type":18,"value":465}," not currently have its payload replaced by an\nimported payload as described below in\n",{"type":13,"tag":285,"props":467,"children":469},{"href":468},"/chapters/synchronization#synchronization-semaphores-importing",[470],{"type":18,"value":471},"Importing Semaphore Payloads",{"type":18,"value":473},"\nunless that imported payload’s handle type was included in\n",{"type":13,"tag":285,"props":475,"children":477},{"href":476},"/man/VkExternalSemaphoreProperties",[478],{"type":18,"value":479},"VkExternalSemaphoreProperties",{"type":18,"value":177},{"type":13,"tag":21,"props":482,"children":484},{"className":483},[],[485],{"type":18,"value":486},"exportFromImportedHandleTypes",{"type":18,"value":488},"\nfor ",{"type":13,"tag":21,"props":490,"children":492},{"className":491},[],[493],{"type":18,"value":331},{"type":13,"tag":365,"props":495,"children":497},{"name":496},"VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-01129",[498],{"type":13,"tag":14,"props":499,"children":500},{},[501,502,507,509,513,515,518,520],{"type":18,"value":416},{"type":13,"tag":21,"props":503,"children":505},{"className":504},[],[506],{"type":18,"value":331},{"type":18,"value":508}," refers to a handle type with copy payload\ntransference semantics, as defined below in\n",{"type":13,"tag":285,"props":510,"children":511},{"href":468},[512],{"type":18,"value":471},{"type":18,"value":514},",\nthere ",{"type":13,"tag":380,"props":516,"children":517},{"type":382},[],{"type":18,"value":519}," be no queue waiting on ",{"type":13,"tag":21,"props":521,"children":523},{"className":522},[],[524],{"type":18,"value":320},{"type":13,"tag":365,"props":526,"children":528},{"name":527},"VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-01130",[529],{"type":13,"tag":14,"props":530,"children":531},{},[532,533,538,540,545,546,549,551,557],{"type":18,"value":416},{"type":13,"tag":21,"props":534,"children":536},{"className":535},[],[537],{"type":18,"value":331},{"type":18,"value":539}," refers to a handle type with copy payload\ntransference semantics, ",{"type":13,"tag":21,"props":541,"children":543},{"className":542},[],[544],{"type":18,"value":320},{"type":18,"value":378},{"type":13,"tag":380,"props":547,"children":548},{"type":382},[],{"type":18,"value":550}," be signaled, or have an\nassociated ",{"type":13,"tag":285,"props":552,"children":554},{"href":553},"/chapters/synchronization#synchronization-semaphores-signaling",[555],{"type":18,"value":556},"semaphore signal\noperation",{"type":18,"value":558}," pending execution",{"type":13,"tag":365,"props":560,"children":562},{"name":561},"VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-01131",[563],{"type":13,"tag":14,"props":564,"children":565},{},[566,571,572,575],{"type":13,"tag":21,"props":567,"children":569},{"className":568},[],[570],{"type":18,"value":331},{"type":18,"value":378},{"type":13,"tag":380,"props":573,"children":574},{"type":382},[],{"type":18,"value":576}," be defined as an NT handle or a global share\nhandle",{"type":13,"tag":360,"props":578,"children":580},{"name":579},"Valid Usage (Implicit)",[581,605,627,653],{"type":13,"tag":365,"props":582,"children":584},{"name":583},"VUID-VkSemaphoreGetWin32HandleInfoKHR-sType-sType",[585],{"type":13,"tag":14,"props":586,"children":587},{},[588,593,594,597,599],{"type":13,"tag":21,"props":589,"children":591},{"className":590},[],[592],{"type":18,"value":281},{"type":18,"value":378},{"type":13,"tag":380,"props":595,"children":596},{"type":382},[],{"type":18,"value":598}," be ",{"type":13,"tag":21,"props":600,"children":602},{"className":601},[],[603],{"type":18,"value":604},"VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR",{"type":13,"tag":365,"props":606,"children":608},{"name":607},"VUID-VkSemaphoreGetWin32HandleInfoKHR-pNext-pNext",[609],{"type":13,"tag":14,"props":610,"children":611},{},[612,617,618,621,622],{"type":13,"tag":21,"props":613,"children":615},{"className":614},[],[616],{"type":18,"value":301},{"type":18,"value":378},{"type":13,"tag":380,"props":619,"children":620},{"type":382},[],{"type":18,"value":598},{"type":13,"tag":21,"props":623,"children":625},{"className":624},[],[626],{"type":18,"value":309},{"type":13,"tag":365,"props":628,"children":630},{"name":629},"VUID-VkSemaphoreGetWin32HandleInfoKHR-semaphore-parameter",[631],{"type":13,"tag":14,"props":632,"children":633},{},[634,639,640,643,645,651],{"type":13,"tag":21,"props":635,"children":637},{"className":636},[],[638],{"type":18,"value":320},{"type":18,"value":378},{"type":13,"tag":380,"props":641,"children":642},{"type":382},[],{"type":18,"value":644}," be a valid ",{"type":13,"tag":285,"props":646,"children":648},{"href":647},"/man/VkSemaphore",[649],{"type":18,"value":650},"VkSemaphore",{"type":18,"value":652}," handle",{"type":13,"tag":365,"props":654,"children":656},{"name":655},"VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-parameter",[657],{"type":13,"tag":14,"props":658,"children":659},{},[660,665,666,669,670,674],{"type":13,"tag":21,"props":661,"children":663},{"className":662},[],[664],{"type":18,"value":331},{"type":18,"value":378},{"type":13,"tag":380,"props":667,"children":668},{"type":382},[],{"type":18,"value":644},{"type":13,"tag":285,"props":671,"children":672},{"href":335},[673],{"type":18,"value":338},{"type":18,"value":675}," value",{"type":13,"tag":677,"props":678,"children":679},"style",{},[680],{"type":18,"value":681},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":39,"searchDepth":69,"depth":69,"links":683},[],"markdown",1725732585351]