[{"data":1,"prerenderedAt":613},["ShallowReactive",2],{"QxI7rGpUJw":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":612,"_id":4},"vkGetMemoryMetalHandlePropertiesEXT","Get Properties of External Memory Metal Handles","VK_EXT_external_memory_metal","protos",[],{"type":10,"children":11,"toc":610},"root",[12,27,344,428,509,604],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,25],{"type":18,"value":19},"text","Metal memory handles compatible with Vulkan ",{"type":13,"tag":21,"props":22,"children":24},"normative",{"type":23},"may",[],{"type":18,"value":26}," also be created by\nnon-Vulkan APIs using methods beyond the scope of this specification.\nTo determine the correct parameters to use when importing such handles,\ncall:",{"type":13,"tag":28,"props":29,"children":30},"code-group",{},[31,152],{"type":13,"tag":32,"props":33,"children":39},"pre",{"className":34,"code":35,"filename":36,"language":37,"meta":38,"style":38},"language-c shiki shiki-themes github-light-default github-dark-default","VkResult vkGetMemoryMetalHandlePropertiesEXT(\n VkDevice device,\n VkExternalMemoryHandleTypeFlagBits handleType,\n const void* pHandle,\n VkMemoryMetalHandlePropertiesEXT* pMemoryMetalHandleProperties);\n","C","c","",[40],{"type":13,"tag":41,"props":42,"children":43},"code",{"__ignoreMap":38},[44,66,86,104,128],{"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:#1F2328;--shiki-dark:#E6EDF3",[54],{"type":18,"value":55},"VkResult ",{"type":13,"tag":45,"props":57,"children":59},{"style":58},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[60],{"type":18,"value":4},{"type":13,"tag":45,"props":62,"children":63},{"style":52},[64],{"type":18,"value":65},"(\n",{"type":13,"tag":45,"props":67,"children":69},{"class":47,"line":68},2,[70,75,81],{"type":13,"tag":45,"props":71,"children":72},{"style":52},[73],{"type":18,"value":74}," VkDevice ",{"type":13,"tag":45,"props":76,"children":78},{"style":77},"--shiki-default:#953800;--shiki-dark:#FFA657",[79],{"type":18,"value":80},"device",{"type":13,"tag":45,"props":82,"children":83},{"style":52},[84],{"type":18,"value":85},",\n",{"type":13,"tag":45,"props":87,"children":89},{"class":47,"line":88},3,[90,95,100],{"type":13,"tag":45,"props":91,"children":92},{"style":52},[93],{"type":18,"value":94}," VkExternalMemoryHandleTypeFlagBits ",{"type":13,"tag":45,"props":96,"children":97},{"style":77},[98],{"type":18,"value":99},"handleType",{"type":13,"tag":45,"props":101,"children":102},{"style":52},[103],{"type":18,"value":85},{"type":13,"tag":45,"props":105,"children":107},{"class":47,"line":106},4,[108,114,119,124],{"type":13,"tag":45,"props":109,"children":111},{"style":110},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[112],{"type":18,"value":113}," const",{"type":13,"tag":45,"props":115,"children":116},{"style":110},[117],{"type":18,"value":118}," void*",{"type":13,"tag":45,"props":120,"children":121},{"style":77},[122],{"type":18,"value":123}," pHandle",{"type":13,"tag":45,"props":125,"children":126},{"style":52},[127],{"type":18,"value":85},{"type":13,"tag":45,"props":129,"children":131},{"class":47,"line":130},5,[132,137,142,147],{"type":13,"tag":45,"props":133,"children":134},{"style":52},[135],{"type":18,"value":136}," VkMemoryMetalHandlePropertiesEXT",{"type":13,"tag":45,"props":138,"children":139},{"style":110},[140],{"type":18,"value":141},"*",{"type":13,"tag":45,"props":143,"children":144},{"style":77},[145],{"type":18,"value":146}," pMemoryMetalHandleProperties",{"type":13,"tag":45,"props":148,"children":149},{"style":52},[150],{"type":18,"value":151},");\n",{"type":13,"tag":32,"props":153,"children":158},{"className":154,"code":155,"filename":156,"language":157,"meta":38,"style":38},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn get_memory_metal_handle_properties_ext(\n device: crate :: vk :: vk::Device,\n handle_type: ExternalMemoryHandleTypeFlags,\n p_handle: *const c_void,\n p_memory_metal_handle_properties: *mut vk::MemoryMetalHandlePropertiesEXT,\n) -> vk::Result;\n","Rust","rs",[159],{"type":13,"tag":41,"props":160,"children":161},{"__ignoreMap":38},[162,184,235,256,278,312],{"type":13,"tag":45,"props":163,"children":164},{"class":47,"line":48},[165,170,175,180],{"type":13,"tag":45,"props":166,"children":167},{"style":110},[168],{"type":18,"value":169},"pub",{"type":13,"tag":45,"props":171,"children":172},{"style":110},[173],{"type":18,"value":174}," fn",{"type":13,"tag":45,"props":176,"children":177},{"style":58},[178],{"type":18,"value":179}," get_memory_metal_handle_properties_ext",{"type":13,"tag":45,"props":181,"children":182},{"style":52},[183],{"type":18,"value":65},{"type":13,"tag":45,"props":185,"children":186},{"class":47,"line":68},[187,192,197,202,207,212,217,222,226,231],{"type":13,"tag":45,"props":188,"children":189},{"style":52},[190],{"type":18,"value":191}," device",{"type":13,"tag":45,"props":193,"children":194},{"style":110},[195],{"type":18,"value":196},":",{"type":13,"tag":45,"props":198,"children":199},{"style":110},[200],{"type":18,"value":201}," crate",{"type":13,"tag":45,"props":203,"children":204},{"style":110},[205],{"type":18,"value":206}," ::",{"type":13,"tag":45,"props":208,"children":209},{"style":52},[210],{"type":18,"value":211}," vk ",{"type":13,"tag":45,"props":213,"children":214},{"style":110},[215],{"type":18,"value":216},"::",{"type":13,"tag":45,"props":218,"children":219},{"style":77},[220],{"type":18,"value":221}," vk",{"type":13,"tag":45,"props":223,"children":224},{"style":110},[225],{"type":18,"value":216},{"type":13,"tag":45,"props":227,"children":228},{"style":77},[229],{"type":18,"value":230},"Device",{"type":13,"tag":45,"props":232,"children":233},{"style":52},[234],{"type":18,"value":85},{"type":13,"tag":45,"props":236,"children":237},{"class":47,"line":88},[238,243,247,252],{"type":13,"tag":45,"props":239,"children":240},{"style":52},[241],{"type":18,"value":242}," handle_type",{"type":13,"tag":45,"props":244,"children":245},{"style":110},[246],{"type":18,"value":196},{"type":13,"tag":45,"props":248,"children":249},{"style":77},[250],{"type":18,"value":251}," ExternalMemoryHandleTypeFlags",{"type":13,"tag":45,"props":253,"children":254},{"style":52},[255],{"type":18,"value":85},{"type":13,"tag":45,"props":257,"children":258},{"class":47,"line":106},[259,264,268,273],{"type":13,"tag":45,"props":260,"children":261},{"style":52},[262],{"type":18,"value":263}," p_handle",{"type":13,"tag":45,"props":265,"children":266},{"style":110},[267],{"type":18,"value":196},{"type":13,"tag":45,"props":269,"children":270},{"style":110},[271],{"type":18,"value":272}," *const",{"type":13,"tag":45,"props":274,"children":275},{"style":52},[276],{"type":18,"value":277}," c_void,\n",{"type":13,"tag":45,"props":279,"children":280},{"class":47,"line":130},[281,286,290,295,299,303,308],{"type":13,"tag":45,"props":282,"children":283},{"style":52},[284],{"type":18,"value":285}," p_memory_metal_handle_properties",{"type":13,"tag":45,"props":287,"children":288},{"style":110},[289],{"type":18,"value":196},{"type":13,"tag":45,"props":291,"children":292},{"style":110},[293],{"type":18,"value":294}," *mut",{"type":13,"tag":45,"props":296,"children":297},{"style":77},[298],{"type":18,"value":221},{"type":13,"tag":45,"props":300,"children":301},{"style":110},[302],{"type":18,"value":216},{"type":13,"tag":45,"props":304,"children":305},{"style":77},[306],{"type":18,"value":307},"MemoryMetalHandlePropertiesEXT",{"type":13,"tag":45,"props":309,"children":310},{"style":52},[311],{"type":18,"value":85},{"type":13,"tag":45,"props":313,"children":315},{"class":47,"line":314},6,[316,321,326,330,334,339],{"type":13,"tag":45,"props":317,"children":318},{"style":52},[319],{"type":18,"value":320},") ",{"type":13,"tag":45,"props":322,"children":323},{"style":110},[324],{"type":18,"value":325},"->",{"type":13,"tag":45,"props":327,"children":328},{"style":77},[329],{"type":18,"value":221},{"type":13,"tag":45,"props":331,"children":332},{"style":110},[333],{"type":18,"value":216},{"type":13,"tag":45,"props":335,"children":336},{"style":77},[337],{"type":18,"value":338},"Result",{"type":13,"tag":45,"props":340,"children":341},{"style":52},[342],{"type":18,"value":343},";\n",{"type":13,"tag":345,"props":346,"children":347},"ul",{},[348,367,392,402],{"type":13,"tag":349,"props":350,"children":351},"li",{},[352,357,359,365],{"type":13,"tag":41,"props":353,"children":355},{"className":354},[],[356],{"type":18,"value":80},{"type":18,"value":358}," is the logical device that will be importing ",{"type":13,"tag":41,"props":360,"children":362},{"className":361},[],[363],{"type":18,"value":364},"pHandle",{"type":18,"value":366},".",{"type":13,"tag":349,"props":368,"children":369},{},[370,375,377,384,386,391],{"type":13,"tag":41,"props":371,"children":373},{"className":372},[],[374],{"type":18,"value":99},{"type":18,"value":376}," is a ",{"type":13,"tag":378,"props":379,"children":381},"a",{"href":380},"/man/VkExternalMemoryHandleTypeFlagBits",[382],{"type":18,"value":383},"VkExternalMemoryHandleTypeFlagBits",{"type":18,"value":385}," value\nspecifying the type of the handle ",{"type":13,"tag":41,"props":387,"children":389},{"className":388},[],[390],{"type":18,"value":364},{"type":18,"value":366},{"type":13,"tag":349,"props":393,"children":394},{},[395,400],{"type":13,"tag":41,"props":396,"children":398},{"className":397},[],[399],{"type":18,"value":364},{"type":18,"value":401}," is the handle which will be imported.",{"type":13,"tag":349,"props":403,"children":404},{},[405,411,413,419,421,426],{"type":13,"tag":41,"props":406,"children":408},{"className":407},[],[409],{"type":18,"value":410},"pMemoryMetalHandleProperties",{"type":18,"value":412}," is a pointer to a\n",{"type":13,"tag":378,"props":414,"children":416},{"href":415},"/man/VkMemoryMetalHandlePropertiesEXT",[417],{"type":18,"value":418},"VkMemoryMetalHandlePropertiesEXT",{"type":18,"value":420}," structure in which properties of\n",{"type":13,"tag":41,"props":422,"children":424},{"className":423},[],[425],{"type":18,"value":364},{"type":18,"value":427}," are returned.",{"type":13,"tag":429,"props":430,"children":432},"validity-group",{"name":431},"Valid Usage",[433,470],{"type":13,"tag":434,"props":435,"children":437},"validity-field",{"name":436},"VUID-vkGetMemoryMetalHandlePropertiesEXT-handle-10416",[438],{"type":13,"tag":14,"props":439,"children":440},{},[441,446,448,452,454],{"type":13,"tag":41,"props":442,"children":444},{"className":443},[],[445],{"type":18,"value":364},{"type":18,"value":447}," ",{"type":13,"tag":21,"props":449,"children":451},{"type":450},"must",[],{"type":18,"value":453}," point to a valid id",{"type":13,"tag":455,"props":456,"children":457},"mtl-buffer",{},[458,460],{"type":18,"value":459},", id",{"type":13,"tag":461,"props":462,"children":463},"mtl-texture",{},[464,466],{"type":18,"value":465}," or\nid",{"type":13,"tag":467,"props":468,"children":469},"mtl-device",{},[],{"type":13,"tag":434,"props":471,"children":473},{"name":472},"VUID-vkGetMemoryMetalHandlePropertiesEXT-handleType-10417",[474],{"type":13,"tag":14,"props":475,"children":476},{},[477,482,483,486,488,494,495,501,503],{"type":13,"tag":41,"props":478,"children":480},{"className":479},[],[481],{"type":18,"value":99},{"type":18,"value":447},{"type":13,"tag":21,"props":484,"children":485},{"type":450},[],{"type":18,"value":487}," be\n",{"type":13,"tag":41,"props":489,"children":491},{"className":490},[],[492],{"type":18,"value":493},"VK_EXTERNAL_MEMORY_HANDLE_TYPE_MTLBUFFER_BIT_EXT",{"type":18,"value":85},{"type":13,"tag":41,"props":496,"children":498},{"className":497},[],[499],{"type":18,"value":500},"VK_EXTERNAL_MEMORY_HANDLE_TYPE_MTLTEXTURE_BIT_EXT",{"type":18,"value":502}," or\n",{"type":13,"tag":41,"props":504,"children":506},{"className":505},[],[507],{"type":18,"value":508},"VK_EXTERNAL_MEMORY_HANDLE_TYPE_MTLHEAP_BIT_EXT",{"type":13,"tag":429,"props":510,"children":512},{"name":511},"Valid Usage (Implicit)",[513,539,562,580],{"type":13,"tag":434,"props":514,"children":516},{"name":515},"VUID-vkGetMemoryMetalHandlePropertiesEXT-device-parameter",[517],{"type":13,"tag":14,"props":518,"children":519},{},[520,525,526,529,531,537],{"type":13,"tag":41,"props":521,"children":523},{"className":522},[],[524],{"type":18,"value":80},{"type":18,"value":447},{"type":13,"tag":21,"props":527,"children":528},{"type":450},[],{"type":18,"value":530}," be a valid ",{"type":13,"tag":378,"props":532,"children":534},{"href":533},"/man/VkDevice",[535],{"type":18,"value":536},"VkDevice",{"type":18,"value":538}," handle",{"type":13,"tag":434,"props":540,"children":542},{"name":541},"VUID-vkGetMemoryMetalHandlePropertiesEXT-handleType-parameter",[543],{"type":13,"tag":14,"props":544,"children":545},{},[546,551,552,555,556,560],{"type":13,"tag":41,"props":547,"children":549},{"className":548},[],[550],{"type":18,"value":99},{"type":18,"value":447},{"type":13,"tag":21,"props":553,"children":554},{"type":450},[],{"type":18,"value":530},{"type":13,"tag":378,"props":557,"children":558},{"href":380},[559],{"type":18,"value":383},{"type":18,"value":561}," value",{"type":13,"tag":434,"props":563,"children":565},{"name":564},"VUID-vkGetMemoryMetalHandlePropertiesEXT-pHandle-parameter",[566],{"type":13,"tag":14,"props":567,"children":568},{},[569,574,575,578],{"type":13,"tag":41,"props":570,"children":572},{"className":571},[],[573],{"type":18,"value":364},{"type":18,"value":447},{"type":13,"tag":21,"props":576,"children":577},{"type":450},[],{"type":18,"value":579}," be a pointer value",{"type":13,"tag":434,"props":581,"children":583},{"name":582},"VUID-vkGetMemoryMetalHandlePropertiesEXT-pMemoryMetalHandleProperties-parameter",[584],{"type":13,"tag":14,"props":585,"children":586},{},[587,592,593,596,598,602],{"type":13,"tag":41,"props":588,"children":590},{"className":589},[],[591],{"type":18,"value":410},{"type":18,"value":447},{"type":13,"tag":21,"props":594,"children":595},{"type":450},[],{"type":18,"value":597}," be a valid pointer to a ",{"type":13,"tag":378,"props":599,"children":600},{"href":415},[601],{"type":18,"value":418},{"type":18,"value":603}," structure",{"type":13,"tag":605,"props":606,"children":607},"style",{},[608],{"type":18,"value":609},"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":38,"searchDepth":68,"depth":68,"links":611},[],"markdown",1744876599671]