/ chapters / VK_FUCHSIA_imagepipe_surface / platformCreateSurface_imagepipe.txt
platformCreateSurface_imagepipe.txt
 1  // Copyright (c) 2014-2019 Khronos Group. This work is licensed under a
 2  // Creative Commons Attribution 4.0 International License; see
 3  // http://creativecommons.org/licenses/by/4.0/
 4  
 5  [[platformCreateSurface_imagepipe,platformCreateSurface_imagepipe]]
 6  
 7  === Fuchsia Platform
 8  
 9  [open,refpage='vkCreateImagePipeSurfaceFUCHSIA',desc='Create a slink:VkSurfaceKHR object for a Fuchsia ImagePipe',type='protos']
10  --
11  
12  To create a sname:VkSurfaceKHR object for a Fuchsia ImagePipe, call:
13  
14  include::{generated}/api/protos/vkCreateImagePipeSurfaceFUCHSIA.txt[]
15  
16    * pname:instance is the instance to associate with the surface.
17    * pname:pCreateInfo is a pointer to an instance of the
18      slink:VkImagePipeSurfaceCreateInfoFUCHSIA structure containing
19      parameters affecting the creation of the surface object.
20    * pname:pAllocator is the allocator used for host memory allocated for the
21      surface object when there is no more specific allocator available (see
22      <<memory-allocation,Memory Allocation>>).
23    * pname:pSurface points to a slink:VkSurfaceKHR handle in which the
24      created surface object is returned.
25  
26  include::{generated}/validity/protos/vkCreateImagePipeSurfaceFUCHSIA.txt[]
27  --
28  
29  [open,refpage='VkImagePipeSurfaceCreateInfoFUCHSIA',desc='Structure specifying parameters of a newly created ImagePipe surface object',type='structs']
30  --
31  
32  The sname:VkImagePipeSurfaceCreateInfoFUCHSIA structure is defined as:
33  
34  include::{generated}/api/structs/VkImagePipeSurfaceCreateInfoFUCHSIA.txt[]
35  
36    * pname:sType is the type of this structure.
37    * pname:pNext is `NULL` or a pointer to an extension-specific structure.
38    * pname:flags is reserved for future use.
39    * pname:imagePipeHandle is a code:zx_handle_t referring to the ImagePipe
40      to associate with the surface.
41  
42  .Valid Usage
43  ****
44    * [[VUID-VkImagePipeSurfaceCreateInfoFUCHSIA-imagePipeHandle-00000]]
45      pname:imagePipeHandle must: be a valid code:zx_handle_t
46  ****
47  
48  include::{generated}/validity/structs/VkImagePipeSurfaceCreateInfoFUCHSIA.txt[]
49  --
50  
51  On Fuchsia, the surface pname:currentExtent is the special value
52  [eq]#(0xFFFFFFFF, 0xFFFFFFFF)#, indicating that the surface size will be
53  determined by the extent of a swapchain targeting the surface.