[{"data":1,"prerenderedAt":715},["ShallowReactive",2],{"ZknPpYg4z3":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":714,"_id":4},"VkSemaphoreGetFdInfoKHR","Structure describing a POSIX FD semaphore export operation","VK_KHR_external_semaphore_fd","structs",[],{"type":10,"children":11,"toc":712},"root",[12,28,268,341,359,607,706],{"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 VkSemaphoreGetFdInfoKHR {\n VkStructureType sType;\n const void* pNext;\n VkSemaphore semaphore;\n VkExternalSemaphoreHandleTypeFlagBits handleType;\n} VkSemaphoreGetFdInfoKHR;\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}," VkSemaphoreGetFdInfoKHR {\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},"} VkSemaphoreGetFdInfoKHR;\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 SemaphoreGetFdInfoKHR {\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}," SemaphoreGetFdInfoKHR",{"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 file descriptor 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,454,486,520,538,577],{"type":13,"tag":365,"props":366,"children":368},"validity-field",{"name":367},"VUID-VkSemaphoreGetFdInfoKHR-handleType-01132",[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\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-VkSemaphoreGetFdInfoKHR-semaphore-01133",[412],{"type":13,"tag":14,"props":413,"children":414},{},[415,420,421,424,426,432,434,440,441,447,449],{"type":13,"tag":21,"props":416,"children":418},{"className":417},[],[419],{"type":18,"value":320},{"type":18,"value":378},{"type":13,"tag":380,"props":422,"children":423},{"type":382},[],{"type":18,"value":425}," not currently have its payload replaced by an\nimported payload as described below in\n",{"type":13,"tag":285,"props":427,"children":429},{"href":428},"/chapters/synchronization#synchronization-semaphores-importing",[430],{"type":18,"value":431},"Importing Semaphore Payloads",{"type":18,"value":433},"\nunless that imported payload’s handle type was included in\n",{"type":13,"tag":285,"props":435,"children":437},{"href":436},"/man/VkExternalSemaphoreProperties",[438],{"type":18,"value":439},"VkExternalSemaphoreProperties",{"type":18,"value":177},{"type":13,"tag":21,"props":442,"children":444},{"className":443},[],[445],{"type":18,"value":446},"exportFromImportedHandleTypes",{"type":18,"value":448},"\nfor ",{"type":13,"tag":21,"props":450,"children":452},{"className":451},[],[453],{"type":18,"value":331},{"type":13,"tag":365,"props":455,"children":457},{"name":456},"VUID-VkSemaphoreGetFdInfoKHR-handleType-01134",[458],{"type":13,"tag":14,"props":459,"children":460},{},[461,463,468,470,474,476,479,481],{"type":18,"value":462},"If ",{"type":13,"tag":21,"props":464,"children":466},{"className":465},[],[467],{"type":18,"value":331},{"type":18,"value":469}," refers to a handle type with copy payload\ntransference semantics, as defined below in\n",{"type":13,"tag":285,"props":471,"children":472},{"href":428},[473],{"type":18,"value":431},{"type":18,"value":475},",\nthere ",{"type":13,"tag":380,"props":477,"children":478},{"type":382},[],{"type":18,"value":480}," be no queue waiting on ",{"type":13,"tag":21,"props":482,"children":484},{"className":483},[],[485],{"type":18,"value":320},{"type":13,"tag":365,"props":487,"children":489},{"name":488},"VUID-VkSemaphoreGetFdInfoKHR-handleType-01135",[490],{"type":13,"tag":14,"props":491,"children":492},{},[493,494,499,501,506,507,510,512,518],{"type":18,"value":462},{"type":13,"tag":21,"props":495,"children":497},{"className":496},[],[498],{"type":18,"value":331},{"type":18,"value":500}," refers to a handle type with copy payload\ntransference semantics, ",{"type":13,"tag":21,"props":502,"children":504},{"className":503},[],[505],{"type":18,"value":320},{"type":18,"value":378},{"type":13,"tag":380,"props":508,"children":509},{"type":382},[],{"type":18,"value":511}," be signaled, or have an\nassociated ",{"type":13,"tag":285,"props":513,"children":515},{"href":514},"/chapters/synchronization#synchronization-semaphores-signaling",[516],{"type":18,"value":517},"semaphore signal\noperation",{"type":18,"value":519}," pending execution",{"type":13,"tag":365,"props":521,"children":523},{"name":522},"VUID-VkSemaphoreGetFdInfoKHR-handleType-01136",[524],{"type":13,"tag":14,"props":525,"children":526},{},[527,532,533,536],{"type":13,"tag":21,"props":528,"children":530},{"className":529},[],[531],{"type":18,"value":331},{"type":18,"value":378},{"type":13,"tag":380,"props":534,"children":535},{"type":382},[],{"type":18,"value":537}," be defined as a POSIX file descriptor handle",{"type":13,"tag":365,"props":539,"children":541},{"name":540},"VUID-VkSemaphoreGetFdInfoKHR-handleType-03253",[542],{"type":13,"tag":14,"props":543,"children":544},{},[545,546,551,552,557,558,561,563,569,571],{"type":18,"value":462},{"type":13,"tag":21,"props":547,"children":549},{"className":548},[],[550],{"type":18,"value":331},{"type":18,"value":500},{"type":13,"tag":21,"props":553,"children":555},{"className":554},[],[556],{"type":18,"value":320},{"type":18,"value":378},{"type":13,"tag":380,"props":559,"children":560},{"type":382},[],{"type":18,"value":562}," have been created with a\n",{"type":13,"tag":285,"props":564,"children":566},{"href":565},"/man/VkSemaphoreType",[567],{"type":18,"value":568},"VkSemaphoreType",{"type":18,"value":570}," of ",{"type":13,"tag":21,"props":572,"children":574},{"className":573},[],[575],{"type":18,"value":576},"VK_SEMAPHORE_TYPE_BINARY",{"type":13,"tag":365,"props":578,"children":580},{"name":579},"VUID-VkSemaphoreGetFdInfoKHR-handleType-03254",[581],{"type":13,"tag":14,"props":582,"children":583},{},[584,585,590,591,596,597,600,602,605],{"type":18,"value":462},{"type":13,"tag":21,"props":586,"children":588},{"className":587},[],[589],{"type":18,"value":331},{"type":18,"value":500},{"type":13,"tag":21,"props":592,"children":594},{"className":593},[],[595],{"type":18,"value":320},{"type":18,"value":378},{"type":13,"tag":380,"props":598,"children":599},{"type":382},[],{"type":18,"value":601}," have an associated\nsemaphore signal operation that has been submitted for execution and any\nsemaphore signal operations on which it depends ",{"type":13,"tag":380,"props":603,"children":604},{"type":382},[],{"type":18,"value":606}," have also been\nsubmitted for execution",{"type":13,"tag":360,"props":608,"children":610},{"name":609},"Valid Usage (Implicit)",[611,635,657,683],{"type":13,"tag":365,"props":612,"children":614},{"name":613},"VUID-VkSemaphoreGetFdInfoKHR-sType-sType",[615],{"type":13,"tag":14,"props":616,"children":617},{},[618,623,624,627,629],{"type":13,"tag":21,"props":619,"children":621},{"className":620},[],[622],{"type":18,"value":281},{"type":18,"value":378},{"type":13,"tag":380,"props":625,"children":626},{"type":382},[],{"type":18,"value":628}," be ",{"type":13,"tag":21,"props":630,"children":632},{"className":631},[],[633],{"type":18,"value":634},"VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR",{"type":13,"tag":365,"props":636,"children":638},{"name":637},"VUID-VkSemaphoreGetFdInfoKHR-pNext-pNext",[639],{"type":13,"tag":14,"props":640,"children":641},{},[642,647,648,651,652],{"type":13,"tag":21,"props":643,"children":645},{"className":644},[],[646],{"type":18,"value":301},{"type":18,"value":378},{"type":13,"tag":380,"props":649,"children":650},{"type":382},[],{"type":18,"value":628},{"type":13,"tag":21,"props":653,"children":655},{"className":654},[],[656],{"type":18,"value":309},{"type":13,"tag":365,"props":658,"children":660},{"name":659},"VUID-VkSemaphoreGetFdInfoKHR-semaphore-parameter",[661],{"type":13,"tag":14,"props":662,"children":663},{},[664,669,670,673,675,681],{"type":13,"tag":21,"props":665,"children":667},{"className":666},[],[668],{"type":18,"value":320},{"type":18,"value":378},{"type":13,"tag":380,"props":671,"children":672},{"type":382},[],{"type":18,"value":674}," be a valid ",{"type":13,"tag":285,"props":676,"children":678},{"href":677},"/man/VkSemaphore",[679],{"type":18,"value":680},"VkSemaphore",{"type":18,"value":682}," handle",{"type":13,"tag":365,"props":684,"children":686},{"name":685},"VUID-VkSemaphoreGetFdInfoKHR-handleType-parameter",[687],{"type":13,"tag":14,"props":688,"children":689},{},[690,695,696,699,700,704],{"type":13,"tag":21,"props":691,"children":693},{"className":692},[],[694],{"type":18,"value":331},{"type":18,"value":378},{"type":13,"tag":380,"props":697,"children":698},{"type":382},[],{"type":18,"value":674},{"type":13,"tag":285,"props":701,"children":702},{"href":335},[703],{"type":18,"value":338},{"type":18,"value":705}," value",{"type":13,"tag":707,"props":708,"children":709},"style",{},[710],{"type":18,"value":711},"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":713},[],"markdown",1729612480008]