1 // Copyright (C) 2018 The Android Open Source Project
2 // Copyright (C) 2018 Google Inc.
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 // http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 
16 // Autogenerated module goldfish_vk_extension_structs
17 //
18 // (header) generated by codegen/vulkan/vulkan-docs-next/scripts/genvk.py -registry
19 // codegen/vulkan/vulkan-docs-next/xml/vk.xml -registryGfxstream
20 // codegen/vulkan/vulkan-docs-next/xml/vk_gfxstream.xml cereal -o host/vulkan/cereal
21 //
22 // Please do not modify directly;
23 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
24 // or directly from Python by defining:
25 // VULKAN_REGISTRY_XML_DIR : Directory containing vk.xml
26 // VULKAN_REGISTRY_SCRIPTS_DIR : Directory containing genvk.py
27 // CEREAL_OUTPUT_DIR: Where to put the generated sources.
28 //
29 // python3 $VULKAN_REGISTRY_SCRIPTS_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o
30 // $CEREAL_OUTPUT_DIR
31 //
32 #pragma once
33 #include <vulkan/vulkan.h>
34 
35 #include "goldfish_vk_private_defs.h"
36 #include "host-common/GfxstreamFatalError.h"
37 #include "vk_android_native_buffer_gfxstream.h"
38 #include "vulkan_gfxstream.h"
39 
40 namespace gfxstream {
41 namespace vk {
42 
43 uint32_t goldfish_vk_struct_type(const void* structExtension);
44 
45 size_t goldfish_vk_extension_struct_size(VkStructureType rootType, const void* structExtension);
46 
47 size_t goldfish_vk_extension_struct_size_with_stream_features(uint32_t streamFeatures,
48                                                               VkStructureType rootType,
49                                                               const void* structExtension);
50 
51 #ifdef VK_VERSION_1_0
52 #endif
53 #ifdef VK_VERSION_1_1
54 #endif
55 #ifdef VK_VERSION_1_2
56 #endif
57 #ifdef VK_VERSION_1_3
58 #endif
59 #ifdef VK_KHR_surface
60 #endif
61 #ifdef VK_KHR_swapchain
62 #endif
63 #ifdef VK_KHR_xcb_surface
64 #endif
65 #ifdef VK_KHR_android_surface
66 #endif
67 #ifdef VK_KHR_win32_surface
68 #endif
69 #ifdef VK_KHR_dynamic_rendering
70 #endif
71 #ifdef VK_KHR_get_physical_device_properties2
72 #endif
73 #ifdef VK_KHR_maintenance1
74 #endif
75 #ifdef VK_KHR_external_memory_capabilities
76 #endif
77 #ifdef VK_KHR_external_memory
78 #endif
79 #ifdef VK_KHR_external_memory_win32
80 #endif
81 #ifdef VK_KHR_external_memory_fd
82 #endif
83 #ifdef VK_KHR_external_semaphore_capabilities
84 #endif
85 #ifdef VK_KHR_external_semaphore
86 #endif
87 #ifdef VK_KHR_external_semaphore_win32
88 #endif
89 #ifdef VK_KHR_external_semaphore_fd
90 #endif
91 #ifdef VK_KHR_shader_float16_int8
92 #endif
93 #ifdef VK_KHR_incremental_present
94 #endif
95 #ifdef VK_KHR_descriptor_update_template
96 #endif
97 #ifdef VK_KHR_imageless_framebuffer
98 #endif
99 #ifdef VK_KHR_create_renderpass2
100 #endif
101 #ifdef VK_KHR_external_fence_capabilities
102 #endif
103 #ifdef VK_KHR_external_fence
104 #endif
105 #ifdef VK_KHR_external_fence_fd
106 #endif
107 #ifdef VK_KHR_maintenance2
108 #endif
109 #ifdef VK_KHR_dedicated_allocation
110 #endif
111 #ifdef VK_KHR_storage_buffer_storage_class
112 #endif
113 #ifdef VK_KHR_get_memory_requirements2
114 #endif
115 #ifdef VK_KHR_image_format_list
116 #endif
117 #ifdef VK_KHR_sampler_ycbcr_conversion
118 #endif
119 #ifdef VK_KHR_bind_memory2
120 #endif
121 #ifdef VK_KHR_maintenance3
122 #endif
123 #ifdef VK_KHR_shader_subgroup_extended_types
124 #endif
125 #ifdef VK_KHR_vulkan_memory_model
126 #endif
127 #ifdef VK_KHR_shader_terminate_invocation
128 #endif
129 #ifdef VK_KHR_buffer_device_address
130 #endif
131 #ifdef VK_KHR_pipeline_executable_properties
132 #endif
133 #ifdef VK_KHR_shader_integer_dot_product
134 #endif
135 #ifdef VK_KHR_shader_non_semantic_info
136 #endif
137 #ifdef VK_KHR_synchronization2
138 #endif
139 #ifdef VK_KHR_zero_initialize_workgroup_memory
140 #endif
141 #ifdef VK_KHR_copy_commands2
142 #endif
143 #ifdef VK_KHR_format_feature_flags2
144 #endif
145 #ifdef VK_KHR_maintenance4
146 #endif
147 #ifdef VK_KHR_maintenance5
148 #endif
149 #ifdef VK_ANDROID_native_buffer
150 #endif
151 #ifdef VK_EXT_transform_feedback
152 #endif
153 #ifdef VK_AMD_gpu_shader_half_float
154 #endif
155 #ifdef VK_EXT_texture_compression_astc_hdr
156 #endif
157 #ifdef VK_EXT_depth_clip_enable
158 #endif
159 #ifdef VK_EXT_swapchain_colorspace
160 #endif
161 #ifdef VK_MVK_moltenvk
162 #endif
163 #ifdef VK_EXT_queue_family_foreign
164 #endif
165 #ifdef VK_EXT_debug_utils
166 #endif
167 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
168 #endif
169 #ifdef VK_EXT_inline_uniform_block
170 #endif
171 #ifdef VK_EXT_shader_stencil_export
172 #endif
173 #ifdef VK_EXT_vertex_attribute_divisor
174 #endif
175 #ifdef VK_EXT_pipeline_creation_feedback
176 #endif
177 #ifdef VK_NV_shader_subgroup_partitioned
178 #endif
179 #ifdef VK_EXT_metal_surface
180 #endif
181 #ifdef VK_EXT_fragment_density_map
182 #endif
183 #ifdef VK_EXT_scalar_block_layout
184 #endif
185 #ifdef VK_EXT_subgroup_size_control
186 #endif
187 #ifdef VK_EXT_tooling_info
188 #endif
189 #ifdef VK_EXT_validation_features
190 #endif
191 #ifdef VK_EXT_provoking_vertex
192 #endif
193 #ifdef VK_EXT_line_rasterization
194 #endif
195 #ifdef VK_EXT_index_type_uint8
196 #endif
197 #ifdef VK_EXT_extended_dynamic_state
198 #endif
199 #ifdef VK_EXT_host_image_copy
200 #endif
201 #ifdef VK_EXT_swapchain_maintenance1
202 #endif
203 #ifdef VK_EXT_shader_demote_to_helper_invocation
204 #endif
205 #ifdef VK_EXT_texel_buffer_alignment
206 #endif
207 #ifdef VK_EXT_device_memory_report
208 #endif
209 #ifdef VK_EXT_robustness2
210 #endif
211 #ifdef VK_EXT_custom_border_color
212 #endif
213 #ifdef VK_EXT_private_data
214 #endif
215 #ifdef VK_EXT_pipeline_creation_cache_control
216 #endif
217 #ifdef VK_EXT_metal_objects
218 #endif
219 #ifdef VK_EXT_graphics_pipeline_library
220 #endif
221 #ifdef VK_EXT_ycbcr_2plane_444_formats
222 #endif
223 #ifdef VK_EXT_image_robustness
224 #endif
225 #ifdef VK_EXT_image_compression_control
226 #endif
227 #ifdef VK_EXT_4444_formats
228 #endif
229 #ifdef VK_EXT_primitive_topology_list_restart
230 #endif
231 #ifdef VK_EXT_extended_dynamic_state2
232 #endif
233 #ifdef VK_GOOGLE_gfxstream
234 #endif
235 #ifdef VK_EXT_load_store_op_none
236 #endif
237 #ifdef VK_EXT_image_compression_control_swapchain
238 #endif
239 #ifdef VK_QNX_external_memory_screen_buffer
240 #endif
241 
242 }  // namespace vk
243 }  // namespace gfxstream
244