[{"data":1,"prerenderedAt":611},["ShallowReactive",2],{"Q6PXE8Mgdp":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":610,"_id":4},"VkMemoryGetFdInfoKHR","Structure describing a POSIX FD memory export operation","VK_KHR_external_memory_fd","structs",[],{"type":10,"children":11,"toc":608},"root",[12,28,268,341,359,424,503,602],{"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 VkMemoryGetFdInfoKHR {\n VkStructureType sType;\n const void* pNext;\n VkDeviceMemory memory;\n VkExternalMemoryHandleTypeFlagBits handleType;\n} VkMemoryGetFdInfoKHR;\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}," VkMemoryGetFdInfoKHR {\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}," VkDeviceMemory memory;\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}," VkExternalMemoryHandleTypeFlagBits 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},"} VkMemoryGetFdInfoKHR;\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 MemoryGetFdInfoKHR {\n s_type: vk::StructureType,\n p_next: *const c_void,\n memory: vk::DeviceMemory,\n handle_type: ExternalMemoryHandleTypeFlags,\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}," MemoryGetFdInfoKHR",{"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}," memory",{"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},"DeviceMemory",{"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}," ExternalMemoryHandleTypeFlags",{"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},"memory",{"type":18,"value":322}," is the memory object from which the handle will be\nexported.",{"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/VkExternalMemoryHandleTypeFlagBits",[337],{"type":18,"value":338},"VkExternalMemoryHandleTypeFlagBits",{"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 exported 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 memory handle types.",{"type":13,"tag":360,"props":361,"children":362},"note",{},[363],{"type":13,"tag":14,"props":364,"children":365},{},[366,368,373,375,381,382,388,390,395,396,402,404,408,410,422],{"type":18,"value":367},"The size of the exported file ",{"type":13,"tag":369,"props":370,"children":372},"normative",{"type":371},"may",[],{"type":18,"value":374}," be larger than the size requested by\n",{"type":13,"tag":285,"props":376,"children":378},{"href":377},"/man/VkMemoryAllocateInfo",[379],{"type":18,"value":380},"VkMemoryAllocateInfo",{"type":18,"value":177},{"type":13,"tag":21,"props":383,"children":385},{"className":384},[],[386],{"type":18,"value":387},"allocationSize",{"type":18,"value":389},".\nIf ",{"type":13,"tag":21,"props":391,"children":393},{"className":392},[],[394],{"type":18,"value":331},{"type":18,"value":303},{"type":13,"tag":21,"props":397,"children":399},{"className":398},[],[400],{"type":18,"value":401},"VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT",{"type":18,"value":403},",\nthen the application ",{"type":13,"tag":369,"props":405,"children":407},{"type":406},"can",[],{"type":18,"value":409}," query the file’s actual size with\n",{"type":13,"tag":285,"props":411,"children":415},{"href":412,"rel":413},"https://man7.org/linux/man-pages/man2/lseek.2.html",[414],"nofollow",[416],{"type":13,"tag":21,"props":417,"children":419},{"className":418},[],[420],{"type":18,"value":421},"lseek",{"type":18,"value":423},".",{"type":13,"tag":425,"props":426,"children":428},"validity-group",{"name":427},"Valid Usage",[429,472],{"type":13,"tag":430,"props":431,"children":433},"validity-field",{"name":432},"VUID-VkMemoryGetFdInfoKHR-handleType-00671",[434],{"type":13,"tag":14,"props":435,"children":436},{},[437,442,444,448,450,456,457,463,465,470],{"type":13,"tag":21,"props":438,"children":440},{"className":439},[],[441],{"type":18,"value":331},{"type":18,"value":443}," ",{"type":13,"tag":369,"props":445,"children":447},{"type":446},"must",[],{"type":18,"value":449}," have been included in\n",{"type":13,"tag":285,"props":451,"children":453},{"href":452},"/man/VkExportMemoryAllocateInfo",[454],{"type":18,"value":455},"VkExportMemoryAllocateInfo",{"type":18,"value":177},{"type":13,"tag":21,"props":458,"children":460},{"className":459},[],[461],{"type":18,"value":462},"handleTypes",{"type":18,"value":464}," when ",{"type":13,"tag":21,"props":466,"children":468},{"className":467},[],[469],{"type":18,"value":320},{"type":18,"value":471},"\nwas created",{"type":13,"tag":430,"props":473,"children":475},{"name":474},"VUID-VkMemoryGetFdInfoKHR-handleType-00672",[476],{"type":13,"tag":14,"props":477,"children":478},{},[479,484,485,488,490,496,498],{"type":13,"tag":21,"props":480,"children":482},{"className":481},[],[483],{"type":18,"value":331},{"type":18,"value":443},{"type":13,"tag":369,"props":486,"children":487},{"type":446},[],{"type":18,"value":489}," be\n",{"type":13,"tag":21,"props":491,"children":493},{"className":492},[],[494],{"type":18,"value":495},"VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT",{"type":18,"value":497}," or\n",{"type":13,"tag":21,"props":499,"children":501},{"className":500},[],[502],{"type":18,"value":401},{"type":13,"tag":425,"props":504,"children":506},{"name":505},"Valid Usage (Implicit)",[507,531,553,579],{"type":13,"tag":430,"props":508,"children":510},{"name":509},"VUID-VkMemoryGetFdInfoKHR-sType-sType",[511],{"type":13,"tag":14,"props":512,"children":513},{},[514,519,520,523,525],{"type":13,"tag":21,"props":515,"children":517},{"className":516},[],[518],{"type":18,"value":281},{"type":18,"value":443},{"type":13,"tag":369,"props":521,"children":522},{"type":446},[],{"type":18,"value":524}," be ",{"type":13,"tag":21,"props":526,"children":528},{"className":527},[],[529],{"type":18,"value":530},"VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR",{"type":13,"tag":430,"props":532,"children":534},{"name":533},"VUID-VkMemoryGetFdInfoKHR-pNext-pNext",[535],{"type":13,"tag":14,"props":536,"children":537},{},[538,543,544,547,548],{"type":13,"tag":21,"props":539,"children":541},{"className":540},[],[542],{"type":18,"value":301},{"type":18,"value":443},{"type":13,"tag":369,"props":545,"children":546},{"type":446},[],{"type":18,"value":524},{"type":13,"tag":21,"props":549,"children":551},{"className":550},[],[552],{"type":18,"value":309},{"type":13,"tag":430,"props":554,"children":556},{"name":555},"VUID-VkMemoryGetFdInfoKHR-memory-parameter",[557],{"type":13,"tag":14,"props":558,"children":559},{},[560,565,566,569,571,577],{"type":13,"tag":21,"props":561,"children":563},{"className":562},[],[564],{"type":18,"value":320},{"type":18,"value":443},{"type":13,"tag":369,"props":567,"children":568},{"type":446},[],{"type":18,"value":570}," be a valid ",{"type":13,"tag":285,"props":572,"children":574},{"href":573},"/man/VkDeviceMemory",[575],{"type":18,"value":576},"VkDeviceMemory",{"type":18,"value":578}," handle",{"type":13,"tag":430,"props":580,"children":582},{"name":581},"VUID-VkMemoryGetFdInfoKHR-handleType-parameter",[583],{"type":13,"tag":14,"props":584,"children":585},{},[586,591,592,595,596,600],{"type":13,"tag":21,"props":587,"children":589},{"className":588},[],[590],{"type":18,"value":331},{"type":18,"value":443},{"type":13,"tag":369,"props":593,"children":594},{"type":446},[],{"type":18,"value":570},{"type":13,"tag":285,"props":597,"children":598},{"href":335},[599],{"type":18,"value":338},{"type":18,"value":601}," value",{"type":13,"tag":603,"props":604,"children":605},"style",{},[606],{"type":18,"value":607},"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":609},[],"markdown",1729612456800]