/* Ċ Ġ* ĠCopyright ĠL WJ GL . ĠAll Ġrights Ġreserved . Ċ Ġ* ĠLicense Ġterms : Ġhttps :// www . lwjgl . org / license Ċ Ġ* ĠM ACH INE ĠGENERATED ĠFILE , ĠDO ĠNOT ĠEDIT Ċ Ġ*/ Ċ package Ġv ulkan . templates Ċ Ċ import Ġorg . lwjgl . generator .* Ċ import Ġv ulkan .* Ċ Ċ val ĠEXT _ metal _ surface Ġ= Ġ" EXT Metal Surface ". native Class VK (" EXT _ metal _ surface ", Ġtype Ġ= Ġ" instance ", Ġpostfix Ġ= ĠEXT ) Ġ{ ĊĠĠĠ Ġdocumentation Ġ= ĊĠĠĠĠĠĠĠ Ġ""" ĊĠĠĠĠĠĠĠ ĠThe Ġ{@ code ĠVK _ EXT _ metal _ surface } Ġextension Ġis Ġan Ġinstance Ġextension . ĠIt Ġprovides Ġa Ġmechanism Ġto Ġcreate Ġa Ġ{@ code ĠVk Surface KHR } Ġobject Ġ( defined Ġby Ġthe Ġ{@ link ĠK HR Surface ĠVK _ KHR _ surface } Ġextension ) Ġfrom Ġ{@ code ĠCAM et al Layer }, Ġwhich Ġis Ġthe Ġnative Ġrendering Ġsurface Ġof ĠApple âĢĻ s ĠMet al Ġframework . ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > VK _ EXT _ metal _ surface </ h 5 > ĊĠĠĠĠĠĠĠ Ġ< dl > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Name ĠString </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >{@ code ĠVK _ EXT _ metal _ surface }</ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Extension ĠType </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > Instance Ġextension </ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Registered ĠExtension ĠNumber </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > 2 1 8 </ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Revision </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > 1 </ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Extension Ġand ĠVersion ĠDependencies </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Requires ĠVulkan Ġ 1 . 0 </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Requires Ġ{@ link ĠK HR Surface ĠVK _ KHR _ surface }</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Contact </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Dz mit ry ĠM aly sh au Ġ< a Ġtarget ="_ blank " Ġhref =" https :// github . com / Kh ronos Group / Vulkan - Docs / issues / new ? body =[ VK _ EXT _ metal _ surface ] % 2 0 @ k var k % 2 5 0 A % 3 C % 3 CH ere % 2 0 describe % 2 0 the % 2 0 issue % 2 0 or % 2 0 question % 2 0 you % 2 0 have % 2 0 about % 2 0 the % 2 0 VK _ EXT _ metal _ surface % 2 0 extension % 3 E % 3 E "> k var k </ a ></ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĠĠĠĠĠĠĠ Ġ</ dl > ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > Other ĠExtension ĠMetadata </ h 5 > ĊĠĠĠĠĠĠĠ Ġ< dl > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Last ĠModified ĠDate </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > 2 0 1 8 - 1 0 - 0 1 </ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > IP ĠStatus </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd > No Ġknown ĠIP Ġclaims .</ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt >< b > Contribut ors </ b ></ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > Dz mit ry ĠM aly sh au , ĠMozilla ĠCorp .</ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĠĠĠĠĠĠĠ Ġ</ dl > ĊĠĠĠĠĠĠĠ Ġ""" ĊĊĠĠĠ ĠInt Constant ( ĊĠĠĠĠĠĠĠ Ġ" The Ġextension Ġspecification Ġversion .", ĊĊĠĠĠĠĠĠĠ Ġ" EXT _ MET AL _ SURFACE _ SPEC _ VERSION " .." 1 " ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠString Constant ( ĊĠĠĠĠĠĠĠ Ġ" The Ġextension Ġname .", ĊĊĠĠĠĠĠĠĠ Ġ" EXT _ MET AL _ SURFACE _ EXTENSION _ NAME " .." VK _ EXT _ metal _ surface " ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠEnum Constant ( ĊĠĠĠĠĠĠĠ Ġ" Ext ends Ġ{@ code ĠVk Structure Type }. ", ĊĊĠĠĠĠĠĠĠ Ġ" STRUCTURE _ TYPE _ MET AL _ SURFACE _ CREATE _ INFO _ EXT " .." 1 0 0 0 2 1 7 0 0 0 " ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠVk Result ( ĊĠĠĠĠĠĠĠ Ġ" Create Metal Surface EXT ", ĊĠĠĠĠĠĠĠ Ġ""" ĊĠĠĠĠĠĠĠ ĠCreate Ġa ĠVk Surface KHR Ġobject Ġfor ĠCAM et al Layer . ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > C ĠSpecification </ h 5 > ĊĠĠĠĠĠĠĠ ĠTo Ġcreate Ġa Ġ{@ code ĠVk Surface KHR } Ġobject Ġfor Ġa Ġ{@ code ĠCAM et al Layer }, Ġcall : ĊĊĠĠĠĠĠĠĠ Ġ< pre >< code > Ċ ï¿ ¿ Vk Result Ġvk Create Metal Surface EXT ( Ċ ï¿ ¿ ĠĠĠ ĠVk Instance ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinstance , Ċ ï¿ ¿ ĠĠĠ Ġconst ĠVk Metal Surface CreateInfo EXT * ĠĠĠĠĠĠĠĠĠ Ġp CreateInfo , Ċ ï¿ ¿ ĠĠĠ Ġconst ĠVk Allocation Callbacks * ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġp Allocator , Ċ ï¿ ¿ ĠĠĠ ĠVk Surface KHR * ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġp Surface );</ code ></ pre > ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > Valid ĠUsage Ġ( Implicit )</ h 5 > ĊĠĠĠĠĠĠĠ Ġ< ul > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li >{@ code Ġinstance } Ġ< b > must </ b > Ġbe Ġa Ġvalid Ġ{@ code ĠVk Instance } Ġhandle </ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li >{@ code Ġp CreateInfo } Ġ< b > must </ b > Ġbe Ġa Ġvalid Ġpointer Ġto Ġa Ġvalid Ġ## Vk Metal Surface CreateInfo EXT Ġstructure </ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li > If Ġ{@ code Ġp Allocator } Ġis Ġnot Ġ{@ code ĠNULL }, Ġ{@ code Ġp Allocator } Ġ< b > must </ b > Ġbe Ġa Ġvalid Ġpointer Ġto Ġa Ġvalid Ġ## Vk Allocation Callbacks Ġstructure </ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< li >{@ code Ġp Surface } Ġ< b > must </ b > Ġbe Ġa Ġvalid Ġpointer Ġto Ġa Ġ{@ code ĠVk Surface KHR } Ġhandle </ li > ĊĠĠĠĠĠĠĠ Ġ</ ul > ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > Return ĠCode s </ h 5 > ĊĠĠĠĠĠĠĠ Ġ< dl > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt > On Ġsuccess , Ġthis Ġcommand Ġreturns </ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li ># SUCCESS </ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dt > On Ġfailure , Ġthis Ġcommand Ġreturns </ dt > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dd >< ul > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li ># ERROR _ OUT _ OF _ HOST _ MEMORY </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li ># ERROR _ OUT _ OF _ DEVICE _ MEMORY </ li > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< li ># ERROR _ NATIVE _ WINDOW _ IN _ USE _ KHR </ li > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ ul ></ dd > ĊĠĠĠĠĠĠĠ Ġ</ dl > ĊĊĠĠĠĠĠĠĠ Ġ< h 5 > See ĠAlso </ h 5 > ĊĠĠĠĠĠĠĠ Ġ## Vk Allocation Callbacks , Ġ## Vk Metal Surface CreateInfo EXT ĊĠĠĠĠĠĠĠ Ġ"" ", ĊĊĠĠĠĠĠĠĠ ĠVk Instance (" instance ", Ġ" the Ġinstance Ġwith Ġwhich Ġto Ġassociate Ġthe Ġsurface ."), ĊĠĠĠĠĠĠĠ ĠVk Metal Surface CreateInfo EXT . const . p (" p CreateInfo ", Ġ" a Ġpointer Ġto Ġa Ġ## Vk Metal Surface CreateInfo EXT Ġstructure Ġspecifying Ġparameters Ġaffect ing Ġthe Ġcreation Ġof Ġthe Ġsurface Ġobject ."), ĊĠĠĠĠĠĠĠ Ġnullable .. Vk Allocation Callbacks . const . p (" p Allocator ", Ġ" the Ġallocator Ġused Ġfor Ġhost Ġmemory Ġallocated Ġfor Ġthe Ġsurface Ġobject Ġwhen Ġthere Ġis Ġno Ġmore Ġspecific Ġallocator Ġavailable Ġ( see Ġ< a Ġtarget =\" _ blank \" Ġhref =\" https :// www . kh ronos . org / registry / v ulkan / specs / 1 . 2 - extensions / html / vk spec . html \\ # memory - allocation \"> Memory ĠAl location </ a >). "), ĊĠĠĠĠĠĠĠ ĠCheck ( 1 ) .. Vk Surface KHR . p (" p Surface ", Ġ" a Ġpointer Ġto Ġa Ġ{@ code ĠVk Surface KHR } Ġhandle Ġin Ġwhich Ġthe Ġcreated Ġsurface Ġobject Ġis Ġreturned .") ĊĠĠĠ Ġ) Ċ }