• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 VkDecoderSnapshot
17 //
18 // (header) generated by scripts/genvk.py -registry
19 // ../../../../../hardware/google/gfxstream/codegen/vulkan/vulkan-docs-next/xml/vk.xml
20 // -registryGfxstream xml/vk_gfxstream.xml cereal -o
21 // ../../../../../hardware/google/gfxstream/host/vulkan/cereal
22 //
23 // Please do not modify directly;
24 // re-run mesa3d/src/gfxstream/codegen/generate-gfxstream-vulkan.sh,
25 // or directly from Python by defining:
26 // VULKAN_REGISTRY_XML_DIR : Directory containing vk.xml
27 // VULKAN_REGISTRY_SCRIPTS_DIR : Directory containing genvk.py
28 // CEREAL_OUTPUT_DIR: Where to put the generated sources.
29 //
30 // python3 $VULKAN_REGISTRY_SCRIPTS_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o
31 // $CEREAL_OUTPUT_DIR
32 //
33 #pragma once
34 #include <vulkan/vulkan.h>
35 
36 #include <memory>
37 
38 #include "VkSnapshotApiCall.h"
39 #include "aemu/base/HealthMonitor.h"
40 #include "goldfish_vk_private_defs.h"
41 #include "utils/GfxApiLogger.h"
42 #include "vk_android_native_buffer_gfxstream.h"
43 #include "vulkan_gfxstream.h"
44 
45 namespace android {
46 namespace base {
47 class BumpPool;
48 class Stream;
49 }  // namespace base
50 }  // namespace android
51 
52 namespace gfxstream {
53 namespace vk {
54 
55 class VkDecoderSnapshot {
56    public:
57     VkDecoderSnapshot();
58     ~VkDecoderSnapshot();
59 
60     void clear();
61 
62     void saveReplayBuffers(android::base::Stream* stream);
63     static void loadReplayBuffers(android::base::Stream* stream,
64                                   std::vector<uint64_t>* outHandleBuffer,
65                                   std::vector<uint8_t>* outDecoderBuffer);
66 
67     VkSnapshotApiCallInfo* createApiCallInfo();
68     void destroyApiCallInfoIfUnused(VkSnapshotApiCallInfo* info);
69 #ifdef VK_VERSION_1_0
70     void vkCreateInstance(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
71                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
72                           VkResult input_result, const VkInstanceCreateInfo* pCreateInfo,
73                           const VkAllocationCallbacks* pAllocator, VkInstance* pInstance);
74     void vkDestroyInstance(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
75                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
76                            VkInstance instance, const VkAllocationCallbacks* pAllocator);
77     void vkEnumeratePhysicalDevices(android::base::BumpPool* pool,
78                                     VkSnapshotApiCallInfo* apiCallInfo,
79                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
80                                     VkResult input_result, VkInstance instance,
81                                     uint32_t* pPhysicalDeviceCount,
82                                     VkPhysicalDevice* pPhysicalDevices);
83     void vkGetPhysicalDeviceFeatures(android::base::BumpPool* pool,
84                                      VkSnapshotApiCallInfo* apiCallInfo,
85                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
86                                      VkPhysicalDevice physicalDevice,
87                                      VkPhysicalDeviceFeatures* pFeatures);
88     void vkGetPhysicalDeviceFormatProperties(android::base::BumpPool* pool,
89                                              VkSnapshotApiCallInfo* apiCallInfo,
90                                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
91                                              VkPhysicalDevice physicalDevice, VkFormat format,
92                                              VkFormatProperties* pFormatProperties);
93     void vkGetPhysicalDeviceImageFormatProperties(android::base::BumpPool* pool,
94                                                   VkSnapshotApiCallInfo* apiCallInfo,
95                                                   const uint8_t* apiCallPacket,
96                                                   size_t apiCallPacketSize, VkResult input_result,
97                                                   VkPhysicalDevice physicalDevice, VkFormat format,
98                                                   VkImageType type, VkImageTiling tiling,
99                                                   VkImageUsageFlags usage, VkImageCreateFlags flags,
100                                                   VkImageFormatProperties* pImageFormatProperties);
101     void vkGetPhysicalDeviceProperties(android::base::BumpPool* pool,
102                                        VkSnapshotApiCallInfo* apiCallInfo,
103                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
104                                        VkPhysicalDevice physicalDevice,
105                                        VkPhysicalDeviceProperties* pProperties);
106     void vkGetPhysicalDeviceQueueFamilyProperties(
107         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
108         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
109         uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties);
110     void vkGetPhysicalDeviceMemoryProperties(android::base::BumpPool* pool,
111                                              VkSnapshotApiCallInfo* apiCallInfo,
112                                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
113                                              VkPhysicalDevice physicalDevice,
114                                              VkPhysicalDeviceMemoryProperties* pMemoryProperties);
115     void vkGetInstanceProcAddr(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
116                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
117                                PFN_vkVoidFunction input_result, VkInstance instance,
118                                const char* pName);
119     void vkGetDeviceProcAddr(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
120                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
121                              PFN_vkVoidFunction input_result, VkDevice device, const char* pName);
122     void vkCreateDevice(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
123                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
124                         VkResult input_result, VkPhysicalDevice physicalDevice,
125                         const VkDeviceCreateInfo* pCreateInfo,
126                         const VkAllocationCallbacks* pAllocator, VkDevice* pDevice);
127     void vkDestroyDevice(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
128                          const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
129                          const VkAllocationCallbacks* pAllocator);
130     void vkEnumerateInstanceExtensionProperties(android::base::BumpPool* pool,
131                                                 VkSnapshotApiCallInfo* apiCallInfo,
132                                                 const uint8_t* apiCallPacket,
133                                                 size_t apiCallPacketSize, VkResult input_result,
134                                                 const char* pLayerName, uint32_t* pPropertyCount,
135                                                 VkExtensionProperties* pProperties);
136     void vkEnumerateDeviceExtensionProperties(android::base::BumpPool* pool,
137                                               VkSnapshotApiCallInfo* apiCallInfo,
138                                               const uint8_t* apiCallPacket,
139                                               size_t apiCallPacketSize, VkResult input_result,
140                                               VkPhysicalDevice physicalDevice,
141                                               const char* pLayerName, uint32_t* pPropertyCount,
142                                               VkExtensionProperties* pProperties);
143     void vkEnumerateInstanceLayerProperties(android::base::BumpPool* pool,
144                                             VkSnapshotApiCallInfo* apiCallInfo,
145                                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
146                                             VkResult input_result, uint32_t* pPropertyCount,
147                                             VkLayerProperties* pProperties);
148     void vkEnumerateDeviceLayerProperties(android::base::BumpPool* pool,
149                                           VkSnapshotApiCallInfo* apiCallInfo,
150                                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
151                                           VkResult input_result, VkPhysicalDevice physicalDevice,
152                                           uint32_t* pPropertyCount, VkLayerProperties* pProperties);
153     void vkGetDeviceQueue(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
154                           const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
155                           uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue);
156     void vkQueueSubmit(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
157                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
158                        VkResult input_result, VkQueue queue, uint32_t submitCount,
159                        const VkSubmitInfo* pSubmits, VkFence fence);
160     void vkQueueWaitIdle(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
161                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
162                          VkResult input_result, VkQueue queue);
163     void vkDeviceWaitIdle(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
164                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
165                           VkResult input_result, VkDevice device);
166     void vkAllocateMemory(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
167                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
168                           VkResult input_result, VkDevice device,
169                           const VkMemoryAllocateInfo* pAllocateInfo,
170                           const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory);
171     void vkFreeMemory(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
172                       const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
173                       VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator);
174     void vkMapMemory(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
175                      const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
176                      VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size,
177                      VkMemoryMapFlags flags, void** ppData);
178     void vkUnmapMemory(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
179                        const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
180                        VkDeviceMemory memory);
181     void vkFlushMappedMemoryRanges(android::base::BumpPool* pool,
182                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
183                                    size_t apiCallPacketSize, VkResult input_result, VkDevice device,
184                                    uint32_t memoryRangeCount,
185                                    const VkMappedMemoryRange* pMemoryRanges);
186     void vkInvalidateMappedMemoryRanges(android::base::BumpPool* pool,
187                                         VkSnapshotApiCallInfo* apiCallInfo,
188                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
189                                         VkResult input_result, VkDevice device,
190                                         uint32_t memoryRangeCount,
191                                         const VkMappedMemoryRange* pMemoryRanges);
192     void vkGetDeviceMemoryCommitment(android::base::BumpPool* pool,
193                                      VkSnapshotApiCallInfo* apiCallInfo,
194                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
195                                      VkDevice device, VkDeviceMemory memory,
196                                      VkDeviceSize* pCommittedMemoryInBytes);
197     void vkBindBufferMemory(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
198                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
199                             VkResult input_result, VkDevice device, VkBuffer buffer,
200                             VkDeviceMemory memory, VkDeviceSize memoryOffset);
201     void vkBindImageMemory(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
202                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
203                            VkResult input_result, VkDevice device, VkImage image,
204                            VkDeviceMemory memory, VkDeviceSize memoryOffset);
205     void vkGetBufferMemoryRequirements(android::base::BumpPool* pool,
206                                        VkSnapshotApiCallInfo* apiCallInfo,
207                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
208                                        VkDevice device, VkBuffer buffer,
209                                        VkMemoryRequirements* pMemoryRequirements);
210     void vkGetImageMemoryRequirements(android::base::BumpPool* pool,
211                                       VkSnapshotApiCallInfo* apiCallInfo,
212                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
213                                       VkDevice device, VkImage image,
214                                       VkMemoryRequirements* pMemoryRequirements);
215     void vkGetImageSparseMemoryRequirements(
216         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
217         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device, VkImage image,
218         uint32_t* pSparseMemoryRequirementCount,
219         VkSparseImageMemoryRequirements* pSparseMemoryRequirements);
220     void vkGetPhysicalDeviceSparseImageFormatProperties(
221         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
222         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
223         VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage,
224         VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties);
225     void vkQueueBindSparse(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
226                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
227                            VkResult input_result, VkQueue queue, uint32_t bindInfoCount,
228                            const VkBindSparseInfo* pBindInfo, VkFence fence);
229     void vkCreateFence(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
230                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
231                        VkResult input_result, VkDevice device, const VkFenceCreateInfo* pCreateInfo,
232                        const VkAllocationCallbacks* pAllocator, VkFence* pFence);
233     void vkDestroyFence(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
234                         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
235                         VkFence fence, const VkAllocationCallbacks* pAllocator);
236     void vkResetFences(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
237                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
238                        VkResult input_result, VkDevice device, uint32_t fenceCount,
239                        const VkFence* pFences);
240     void vkGetFenceStatus(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
241                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
242                           VkResult input_result, VkDevice device, VkFence fence);
243     void vkWaitForFences(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
244                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
245                          VkResult input_result, VkDevice device, uint32_t fenceCount,
246                          const VkFence* pFences, VkBool32 waitAll, uint64_t timeout);
247     void vkCreateSemaphore(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
248                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
249                            VkResult input_result, VkDevice device,
250                            const VkSemaphoreCreateInfo* pCreateInfo,
251                            const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore);
252     void vkDestroySemaphore(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
253                             const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
254                             VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator);
255     void vkCreateEvent(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
256                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
257                        VkResult input_result, VkDevice device, const VkEventCreateInfo* pCreateInfo,
258                        const VkAllocationCallbacks* pAllocator, VkEvent* pEvent);
259     void vkDestroyEvent(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
260                         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
261                         VkEvent event, const VkAllocationCallbacks* pAllocator);
262     void vkGetEventStatus(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
263                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
264                           VkResult input_result, VkDevice device, VkEvent event);
265     void vkSetEvent(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
266                     const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
267                     VkDevice device, VkEvent event);
268     void vkResetEvent(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
269                       const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
270                       VkDevice device, VkEvent event);
271     void vkCreateQueryPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
272                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
273                            VkResult input_result, VkDevice device,
274                            const VkQueryPoolCreateInfo* pCreateInfo,
275                            const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool);
276     void vkDestroyQueryPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
277                             const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
278                             VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator);
279     void vkGetQueryPoolResults(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
280                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
281                                VkResult input_result, VkDevice device, VkQueryPool queryPool,
282                                uint32_t firstQuery, uint32_t queryCount, size_t dataSize,
283                                void* pData, VkDeviceSize stride, VkQueryResultFlags flags);
284     void vkCreateBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
285                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
286                         VkResult input_result, VkDevice device,
287                         const VkBufferCreateInfo* pCreateInfo,
288                         const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer);
289     void vkDestroyBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
290                          const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
291                          VkBuffer buffer, const VkAllocationCallbacks* pAllocator);
292     void vkCreateBufferView(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
293                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
294                             VkResult input_result, VkDevice device,
295                             const VkBufferViewCreateInfo* pCreateInfo,
296                             const VkAllocationCallbacks* pAllocator, VkBufferView* pView);
297     void vkDestroyBufferView(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
298                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
299                              VkDevice device, VkBufferView bufferView,
300                              const VkAllocationCallbacks* pAllocator);
301     void vkCreateImage(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
302                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
303                        VkResult input_result, VkDevice device, const VkImageCreateInfo* pCreateInfo,
304                        const VkAllocationCallbacks* pAllocator, VkImage* pImage);
305     void vkDestroyImage(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
306                         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
307                         VkImage image, const VkAllocationCallbacks* pAllocator);
308     void vkGetImageSubresourceLayout(android::base::BumpPool* pool,
309                                      VkSnapshotApiCallInfo* apiCallInfo,
310                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
311                                      VkDevice device, VkImage image,
312                                      const VkImageSubresource* pSubresource,
313                                      VkSubresourceLayout* pLayout);
314     void vkCreateImageView(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
315                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
316                            VkResult input_result, VkDevice device,
317                            const VkImageViewCreateInfo* pCreateInfo,
318                            const VkAllocationCallbacks* pAllocator, VkImageView* pView);
319     void vkDestroyImageView(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
320                             const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
321                             VkImageView imageView, const VkAllocationCallbacks* pAllocator);
322     void vkCreateShaderModule(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
323                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
324                               VkResult input_result, VkDevice device,
325                               const VkShaderModuleCreateInfo* pCreateInfo,
326                               const VkAllocationCallbacks* pAllocator,
327                               VkShaderModule* pShaderModule);
328     void vkDestroyShaderModule(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
329                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
330                                VkDevice device, VkShaderModule shaderModule,
331                                const VkAllocationCallbacks* pAllocator);
332     void vkCreatePipelineCache(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
333                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
334                                VkResult input_result, VkDevice device,
335                                const VkPipelineCacheCreateInfo* pCreateInfo,
336                                const VkAllocationCallbacks* pAllocator,
337                                VkPipelineCache* pPipelineCache);
338     void vkDestroyPipelineCache(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
339                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
340                                 VkDevice device, VkPipelineCache pipelineCache,
341                                 const VkAllocationCallbacks* pAllocator);
342     void vkGetPipelineCacheData(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
343                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
344                                 VkResult input_result, VkDevice device,
345                                 VkPipelineCache pipelineCache, size_t* pDataSize, void* pData);
346     void vkMergePipelineCaches(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
347                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
348                                VkResult input_result, VkDevice device, VkPipelineCache dstCache,
349                                uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches);
350     void vkCreateGraphicsPipelines(android::base::BumpPool* pool,
351                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
352                                    size_t apiCallPacketSize, VkResult input_result, VkDevice device,
353                                    VkPipelineCache pipelineCache, uint32_t createInfoCount,
354                                    const VkGraphicsPipelineCreateInfo* pCreateInfos,
355                                    const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
356     void vkCreateComputePipelines(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
357                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
358                                   VkResult input_result, VkDevice device,
359                                   VkPipelineCache pipelineCache, uint32_t createInfoCount,
360                                   const VkComputePipelineCreateInfo* pCreateInfos,
361                                   const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
362     void vkDestroyPipeline(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
363                            const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
364                            VkPipeline pipeline, const VkAllocationCallbacks* pAllocator);
365     void vkCreatePipelineLayout(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
366                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
367                                 VkResult input_result, VkDevice device,
368                                 const VkPipelineLayoutCreateInfo* pCreateInfo,
369                                 const VkAllocationCallbacks* pAllocator,
370                                 VkPipelineLayout* pPipelineLayout);
371     void vkDestroyPipelineLayout(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
372                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
373                                  VkDevice device, VkPipelineLayout pipelineLayout,
374                                  const VkAllocationCallbacks* pAllocator);
375     void vkCreateSampler(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
376                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
377                          VkResult input_result, VkDevice device,
378                          const VkSamplerCreateInfo* pCreateInfo,
379                          const VkAllocationCallbacks* pAllocator, VkSampler* pSampler);
380     void vkDestroySampler(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
381                           const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
382                           VkSampler sampler, const VkAllocationCallbacks* pAllocator);
383     void vkCreateDescriptorSetLayout(android::base::BumpPool* pool,
384                                      VkSnapshotApiCallInfo* apiCallInfo,
385                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
386                                      VkResult input_result, VkDevice device,
387                                      const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
388                                      const VkAllocationCallbacks* pAllocator,
389                                      VkDescriptorSetLayout* pSetLayout);
390     void vkDestroyDescriptorSetLayout(android::base::BumpPool* pool,
391                                       VkSnapshotApiCallInfo* apiCallInfo,
392                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
393                                       VkDevice device, VkDescriptorSetLayout descriptorSetLayout,
394                                       const VkAllocationCallbacks* pAllocator);
395     void vkCreateDescriptorPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
396                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
397                                 VkResult input_result, VkDevice device,
398                                 const VkDescriptorPoolCreateInfo* pCreateInfo,
399                                 const VkAllocationCallbacks* pAllocator,
400                                 VkDescriptorPool* pDescriptorPool);
401     void vkDestroyDescriptorPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
402                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
403                                  VkDevice device, VkDescriptorPool descriptorPool,
404                                  const VkAllocationCallbacks* pAllocator);
405     void vkResetDescriptorPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
406                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
407                                VkResult input_result, VkDevice device,
408                                VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags);
409     void vkAllocateDescriptorSets(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
410                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
411                                   VkResult input_result, VkDevice device,
412                                   const VkDescriptorSetAllocateInfo* pAllocateInfo,
413                                   VkDescriptorSet* pDescriptorSets);
414     void vkFreeDescriptorSets(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
415                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
416                               VkResult input_result, VkDevice device,
417                               VkDescriptorPool descriptorPool, uint32_t descriptorSetCount,
418                               const VkDescriptorSet* pDescriptorSets);
419     void vkUpdateDescriptorSets(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
420                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
421                                 VkDevice device, uint32_t descriptorWriteCount,
422                                 const VkWriteDescriptorSet* pDescriptorWrites,
423                                 uint32_t descriptorCopyCount,
424                                 const VkCopyDescriptorSet* pDescriptorCopies);
425     void vkCreateFramebuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
426                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
427                              VkResult input_result, VkDevice device,
428                              const VkFramebufferCreateInfo* pCreateInfo,
429                              const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer);
430     void vkDestroyFramebuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
431                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
432                               VkDevice device, VkFramebuffer framebuffer,
433                               const VkAllocationCallbacks* pAllocator);
434     void vkCreateRenderPass(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
435                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
436                             VkResult input_result, VkDevice device,
437                             const VkRenderPassCreateInfo* pCreateInfo,
438                             const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);
439     void vkDestroyRenderPass(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
440                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
441                              VkDevice device, VkRenderPass renderPass,
442                              const VkAllocationCallbacks* pAllocator);
443     void vkGetRenderAreaGranularity(android::base::BumpPool* pool,
444                                     VkSnapshotApiCallInfo* apiCallInfo,
445                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
446                                     VkDevice device, VkRenderPass renderPass,
447                                     VkExtent2D* pGranularity);
448     void vkCreateCommandPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
449                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
450                              VkResult input_result, VkDevice device,
451                              const VkCommandPoolCreateInfo* pCreateInfo,
452                              const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool);
453     void vkDestroyCommandPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
454                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
455                               VkDevice device, VkCommandPool commandPool,
456                               const VkAllocationCallbacks* pAllocator);
457     void vkResetCommandPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
458                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
459                             VkResult input_result, VkDevice device, VkCommandPool commandPool,
460                             VkCommandPoolResetFlags flags);
461     void vkAllocateCommandBuffers(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
462                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
463                                   VkResult input_result, VkDevice device,
464                                   const VkCommandBufferAllocateInfo* pAllocateInfo,
465                                   VkCommandBuffer* pCommandBuffers);
466     void vkFreeCommandBuffers(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
467                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
468                               VkDevice device, VkCommandPool commandPool,
469                               uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers);
470     void vkBeginCommandBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
471                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
472                               VkResult input_result, VkCommandBuffer commandBuffer,
473                               const VkCommandBufferBeginInfo* pBeginInfo);
474     void vkEndCommandBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
475                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
476                             VkResult input_result, VkCommandBuffer commandBuffer);
477     void vkResetCommandBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
478                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
479                               VkResult input_result, VkCommandBuffer commandBuffer,
480                               VkCommandBufferResetFlags flags);
481     void vkCmdBindPipeline(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
482                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
483                            VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint,
484                            VkPipeline pipeline);
485     void vkCmdSetViewport(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
486                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
487                           VkCommandBuffer commandBuffer, uint32_t firstViewport,
488                           uint32_t viewportCount, const VkViewport* pViewports);
489     void vkCmdSetScissor(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
490                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
491                          VkCommandBuffer commandBuffer, uint32_t firstScissor,
492                          uint32_t scissorCount, const VkRect2D* pScissors);
493     void vkCmdSetLineWidth(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
494                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
495                            VkCommandBuffer commandBuffer, float lineWidth);
496     void vkCmdSetDepthBias(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
497                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
498                            VkCommandBuffer commandBuffer, float depthBiasConstantFactor,
499                            float depthBiasClamp, float depthBiasSlopeFactor);
500     void vkCmdSetBlendConstants(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
501                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
502                                 VkCommandBuffer commandBuffer, const float blendConstants[4]);
503     void vkCmdSetDepthBounds(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
504                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
505                              VkCommandBuffer commandBuffer, float minDepthBounds,
506                              float maxDepthBounds);
507     void vkCmdSetStencilCompareMask(android::base::BumpPool* pool,
508                                     VkSnapshotApiCallInfo* apiCallInfo,
509                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
510                                     VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask,
511                                     uint32_t compareMask);
512     void vkCmdSetStencilWriteMask(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
513                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
514                                   VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask,
515                                   uint32_t writeMask);
516     void vkCmdSetStencilReference(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
517                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
518                                   VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask,
519                                   uint32_t reference);
520     void vkCmdBindDescriptorSets(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
521                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
522                                  VkCommandBuffer commandBuffer,
523                                  VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout,
524                                  uint32_t firstSet, uint32_t descriptorSetCount,
525                                  const VkDescriptorSet* pDescriptorSets,
526                                  uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets);
527     void vkCmdBindIndexBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
528                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
529                               VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset,
530                               VkIndexType indexType);
531     void vkCmdBindVertexBuffers(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
532                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
533                                 VkCommandBuffer commandBuffer, uint32_t firstBinding,
534                                 uint32_t bindingCount, const VkBuffer* pBuffers,
535                                 const VkDeviceSize* pOffsets);
536     void vkCmdDraw(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
537                    const uint8_t* apiCallPacket, size_t apiCallPacketSize,
538                    VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount,
539                    uint32_t firstVertex, uint32_t firstInstance);
540     void vkCmdDrawIndexed(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
541                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
542                           VkCommandBuffer commandBuffer, uint32_t indexCount,
543                           uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset,
544                           uint32_t firstInstance);
545     void vkCmdDrawIndirect(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
546                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
547                            VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset,
548                            uint32_t drawCount, uint32_t stride);
549     void vkCmdDrawIndexedIndirect(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
550                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
551                                   VkCommandBuffer commandBuffer, VkBuffer buffer,
552                                   VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
553     void vkCmdDispatch(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
554                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
555                        VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY,
556                        uint32_t groupCountZ);
557     void vkCmdDispatchIndirect(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
558                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
559                                VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);
560     void vkCmdCopyBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
561                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
562                          VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer,
563                          uint32_t regionCount, const VkBufferCopy* pRegions);
564     void vkCmdCopyImage(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
565                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
566                         VkCommandBuffer commandBuffer, VkImage srcImage,
567                         VkImageLayout srcImageLayout, VkImage dstImage,
568                         VkImageLayout dstImageLayout, uint32_t regionCount,
569                         const VkImageCopy* pRegions);
570     void vkCmdBlitImage(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
571                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
572                         VkCommandBuffer commandBuffer, VkImage srcImage,
573                         VkImageLayout srcImageLayout, VkImage dstImage,
574                         VkImageLayout dstImageLayout, uint32_t regionCount,
575                         const VkImageBlit* pRegions, VkFilter filter);
576     void vkCmdCopyBufferToImage(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
577                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
578                                 VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage,
579                                 VkImageLayout dstImageLayout, uint32_t regionCount,
580                                 const VkBufferImageCopy* pRegions);
581     void vkCmdCopyImageToBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
582                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
583                                 VkCommandBuffer commandBuffer, VkImage srcImage,
584                                 VkImageLayout srcImageLayout, VkBuffer dstBuffer,
585                                 uint32_t regionCount, const VkBufferImageCopy* pRegions);
586     void vkCmdUpdateBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
587                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
588                            VkCommandBuffer commandBuffer, VkBuffer dstBuffer,
589                            VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData);
590     void vkCmdFillBuffer(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
591                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
592                          VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset,
593                          VkDeviceSize size, uint32_t data);
594     void vkCmdClearColorImage(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
595                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
596                               VkCommandBuffer commandBuffer, VkImage image,
597                               VkImageLayout imageLayout, const VkClearColorValue* pColor,
598                               uint32_t rangeCount, const VkImageSubresourceRange* pRanges);
599     void vkCmdClearDepthStencilImage(android::base::BumpPool* pool,
600                                      VkSnapshotApiCallInfo* apiCallInfo,
601                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
602                                      VkCommandBuffer commandBuffer, VkImage image,
603                                      VkImageLayout imageLayout,
604                                      const VkClearDepthStencilValue* pDepthStencil,
605                                      uint32_t rangeCount, const VkImageSubresourceRange* pRanges);
606     void vkCmdClearAttachments(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
607                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
608                                VkCommandBuffer commandBuffer, uint32_t attachmentCount,
609                                const VkClearAttachment* pAttachments, uint32_t rectCount,
610                                const VkClearRect* pRects);
611     void vkCmdResolveImage(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
612                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
613                            VkCommandBuffer commandBuffer, VkImage srcImage,
614                            VkImageLayout srcImageLayout, VkImage dstImage,
615                            VkImageLayout dstImageLayout, uint32_t regionCount,
616                            const VkImageResolve* pRegions);
617     void vkCmdSetEvent(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
618                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
619                        VkCommandBuffer commandBuffer, VkEvent event,
620                        VkPipelineStageFlags stageMask);
621     void vkCmdResetEvent(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
622                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
623                          VkCommandBuffer commandBuffer, VkEvent event,
624                          VkPipelineStageFlags stageMask);
625     void vkCmdWaitEvents(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
626                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
627                          VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents,
628                          VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask,
629                          uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers,
630                          uint32_t bufferMemoryBarrierCount,
631                          const VkBufferMemoryBarrier* pBufferMemoryBarriers,
632                          uint32_t imageMemoryBarrierCount,
633                          const VkImageMemoryBarrier* pImageMemoryBarriers);
634     void vkCmdPipelineBarrier(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
635                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
636                               VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask,
637                               VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags,
638                               uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers,
639                               uint32_t bufferMemoryBarrierCount,
640                               const VkBufferMemoryBarrier* pBufferMemoryBarriers,
641                               uint32_t imageMemoryBarrierCount,
642                               const VkImageMemoryBarrier* pImageMemoryBarriers);
643     void vkCmdBeginQuery(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
644                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
645                          VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query,
646                          VkQueryControlFlags flags);
647     void vkCmdEndQuery(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
648                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
649                        VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query);
650     void vkCmdResetQueryPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
651                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
652                              VkCommandBuffer commandBuffer, VkQueryPool queryPool,
653                              uint32_t firstQuery, uint32_t queryCount);
654     void vkCmdWriteTimestamp(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
655                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
656                              VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage,
657                              VkQueryPool queryPool, uint32_t query);
658     void vkCmdCopyQueryPoolResults(android::base::BumpPool* pool,
659                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
660                                    size_t apiCallPacketSize, VkCommandBuffer commandBuffer,
661                                    VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount,
662                                    VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride,
663                                    VkQueryResultFlags flags);
664     void vkCmdPushConstants(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
665                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
666                             VkCommandBuffer commandBuffer, VkPipelineLayout layout,
667                             VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size,
668                             const void* pValues);
669     void vkCmdBeginRenderPass(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
670                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
671                               VkCommandBuffer commandBuffer,
672                               const VkRenderPassBeginInfo* pRenderPassBegin,
673                               VkSubpassContents contents);
674     void vkCmdNextSubpass(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
675                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
676                           VkCommandBuffer commandBuffer, VkSubpassContents contents);
677     void vkCmdEndRenderPass(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
678                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
679                             VkCommandBuffer commandBuffer);
680     void vkCmdExecuteCommands(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
681                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
682                               VkCommandBuffer commandBuffer, uint32_t commandBufferCount,
683                               const VkCommandBuffer* pCommandBuffers);
684 #endif
685 #ifdef VK_VERSION_1_1
686     void vkEnumerateInstanceVersion(android::base::BumpPool* pool,
687                                     VkSnapshotApiCallInfo* apiCallInfo,
688                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
689                                     VkResult input_result, uint32_t* pApiVersion);
690     void vkBindBufferMemory2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
691                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
692                              VkResult input_result, VkDevice device, uint32_t bindInfoCount,
693                              const VkBindBufferMemoryInfo* pBindInfos);
694     void vkBindImageMemory2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
695                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
696                             VkResult input_result, VkDevice device, uint32_t bindInfoCount,
697                             const VkBindImageMemoryInfo* pBindInfos);
698     void vkGetDeviceGroupPeerMemoryFeatures(android::base::BumpPool* pool,
699                                             VkSnapshotApiCallInfo* apiCallInfo,
700                                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
701                                             VkDevice device, uint32_t heapIndex,
702                                             uint32_t localDeviceIndex, uint32_t remoteDeviceIndex,
703                                             VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
704     void vkCmdSetDeviceMask(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
705                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
706                             VkCommandBuffer commandBuffer, uint32_t deviceMask);
707     void vkCmdDispatchBase(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
708                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
709                            VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY,
710                            uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY,
711                            uint32_t groupCountZ);
712     void vkEnumeratePhysicalDeviceGroups(
713         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
714         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
715         VkInstance instance, uint32_t* pPhysicalDeviceGroupCount,
716         VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
717     void vkGetImageMemoryRequirements2(android::base::BumpPool* pool,
718                                        VkSnapshotApiCallInfo* apiCallInfo,
719                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
720                                        VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo,
721                                        VkMemoryRequirements2* pMemoryRequirements);
722     void vkGetBufferMemoryRequirements2(android::base::BumpPool* pool,
723                                         VkSnapshotApiCallInfo* apiCallInfo,
724                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
725                                         VkDevice device,
726                                         const VkBufferMemoryRequirementsInfo2* pInfo,
727                                         VkMemoryRequirements2* pMemoryRequirements);
728     void vkGetImageSparseMemoryRequirements2(
729         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
730         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
731         const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount,
732         VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
733     void vkGetPhysicalDeviceFeatures2(android::base::BumpPool* pool,
734                                       VkSnapshotApiCallInfo* apiCallInfo,
735                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
736                                       VkPhysicalDevice physicalDevice,
737                                       VkPhysicalDeviceFeatures2* pFeatures);
738     void vkGetPhysicalDeviceProperties2(android::base::BumpPool* pool,
739                                         VkSnapshotApiCallInfo* apiCallInfo,
740                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
741                                         VkPhysicalDevice physicalDevice,
742                                         VkPhysicalDeviceProperties2* pProperties);
743     void vkGetPhysicalDeviceFormatProperties2(android::base::BumpPool* pool,
744                                               VkSnapshotApiCallInfo* apiCallInfo,
745                                               const uint8_t* apiCallPacket,
746                                               size_t apiCallPacketSize,
747                                               VkPhysicalDevice physicalDevice, VkFormat format,
748                                               VkFormatProperties2* pFormatProperties);
749     void vkGetPhysicalDeviceImageFormatProperties2(
750         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
751         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
752         VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
753         VkImageFormatProperties2* pImageFormatProperties);
754     void vkGetPhysicalDeviceQueueFamilyProperties2(
755         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
756         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
757         uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties);
758     void vkGetPhysicalDeviceMemoryProperties2(android::base::BumpPool* pool,
759                                               VkSnapshotApiCallInfo* apiCallInfo,
760                                               const uint8_t* apiCallPacket,
761                                               size_t apiCallPacketSize,
762                                               VkPhysicalDevice physicalDevice,
763                                               VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
764     void vkGetPhysicalDeviceSparseImageFormatProperties2(
765         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
766         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
767         const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount,
768         VkSparseImageFormatProperties2* pProperties);
769     void vkTrimCommandPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
770                            const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
771                            VkCommandPool commandPool, VkCommandPoolTrimFlags flags);
772     void vkGetDeviceQueue2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
773                            const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
774                            const VkDeviceQueueInfo2* pQueueInfo, VkQueue* pQueue);
775     void vkCreateSamplerYcbcrConversion(android::base::BumpPool* pool,
776                                         VkSnapshotApiCallInfo* apiCallInfo,
777                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
778                                         VkResult input_result, VkDevice device,
779                                         const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
780                                         const VkAllocationCallbacks* pAllocator,
781                                         VkSamplerYcbcrConversion* pYcbcrConversion);
782     void vkDestroySamplerYcbcrConversion(android::base::BumpPool* pool,
783                                          VkSnapshotApiCallInfo* apiCallInfo,
784                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
785                                          VkDevice device, VkSamplerYcbcrConversion ycbcrConversion,
786                                          const VkAllocationCallbacks* pAllocator);
787     void vkCreateDescriptorUpdateTemplate(android::base::BumpPool* pool,
788                                           VkSnapshotApiCallInfo* apiCallInfo,
789                                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
790                                           VkResult input_result, VkDevice device,
791                                           const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
792                                           const VkAllocationCallbacks* pAllocator,
793                                           VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
794     void vkDestroyDescriptorUpdateTemplate(android::base::BumpPool* pool,
795                                            VkSnapshotApiCallInfo* apiCallInfo,
796                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
797                                            VkDevice device,
798                                            VkDescriptorUpdateTemplate descriptorUpdateTemplate,
799                                            const VkAllocationCallbacks* pAllocator);
800     void vkUpdateDescriptorSetWithTemplate(android::base::BumpPool* pool,
801                                            VkSnapshotApiCallInfo* apiCallInfo,
802                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
803                                            VkDevice device, VkDescriptorSet descriptorSet,
804                                            VkDescriptorUpdateTemplate descriptorUpdateTemplate,
805                                            const void* pData);
806     void vkGetPhysicalDeviceExternalBufferProperties(
807         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
808         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
809         const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
810         VkExternalBufferProperties* pExternalBufferProperties);
811     void vkGetPhysicalDeviceExternalFenceProperties(
812         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
813         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
814         const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
815         VkExternalFenceProperties* pExternalFenceProperties);
816     void vkGetPhysicalDeviceExternalSemaphoreProperties(
817         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
818         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
819         const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
820         VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
821     void vkGetDescriptorSetLayoutSupport(android::base::BumpPool* pool,
822                                          VkSnapshotApiCallInfo* apiCallInfo,
823                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
824                                          VkDevice device,
825                                          const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
826                                          VkDescriptorSetLayoutSupport* pSupport);
827 #endif
828 #ifdef VK_VERSION_1_2
829     void vkCmdDrawIndirectCount(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
830                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
831                                 VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset,
832                                 VkBuffer countBuffer, VkDeviceSize countBufferOffset,
833                                 uint32_t maxDrawCount, uint32_t stride);
834     void vkCmdDrawIndexedIndirectCount(android::base::BumpPool* pool,
835                                        VkSnapshotApiCallInfo* apiCallInfo,
836                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
837                                        VkCommandBuffer commandBuffer, VkBuffer buffer,
838                                        VkDeviceSize offset, VkBuffer countBuffer,
839                                        VkDeviceSize countBufferOffset, uint32_t maxDrawCount,
840                                        uint32_t stride);
841     void vkCreateRenderPass2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
842                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
843                              VkResult input_result, VkDevice device,
844                              const VkRenderPassCreateInfo2* pCreateInfo,
845                              const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);
846     void vkCmdBeginRenderPass2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
847                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
848                                VkCommandBuffer commandBuffer,
849                                const VkRenderPassBeginInfo* pRenderPassBegin,
850                                const VkSubpassBeginInfo* pSubpassBeginInfo);
851     void vkCmdNextSubpass2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
852                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
853                            VkCommandBuffer commandBuffer,
854                            const VkSubpassBeginInfo* pSubpassBeginInfo,
855                            const VkSubpassEndInfo* pSubpassEndInfo);
856     void vkCmdEndRenderPass2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
857                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
858                              VkCommandBuffer commandBuffer,
859                              const VkSubpassEndInfo* pSubpassEndInfo);
860     void vkResetQueryPool(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
861                           const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
862                           VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount);
863     void vkGetSemaphoreCounterValue(android::base::BumpPool* pool,
864                                     VkSnapshotApiCallInfo* apiCallInfo,
865                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
866                                     VkResult input_result, VkDevice device, VkSemaphore semaphore,
867                                     uint64_t* pValue);
868     void vkWaitSemaphores(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
869                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
870                           VkResult input_result, VkDevice device,
871                           const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout);
872     void vkSignalSemaphore(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
873                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
874                            VkResult input_result, VkDevice device,
875                            const VkSemaphoreSignalInfo* pSignalInfo);
876     void vkGetBufferDeviceAddress(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
877                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
878                                   VkDeviceAddress input_result, VkDevice device,
879                                   const VkBufferDeviceAddressInfo* pInfo);
880     void vkGetBufferOpaqueCaptureAddress(android::base::BumpPool* pool,
881                                          VkSnapshotApiCallInfo* apiCallInfo,
882                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
883                                          uint64_t input_result, VkDevice device,
884                                          const VkBufferDeviceAddressInfo* pInfo);
885     void vkGetDeviceMemoryOpaqueCaptureAddress(android::base::BumpPool* pool,
886                                                VkSnapshotApiCallInfo* apiCallInfo,
887                                                const uint8_t* apiCallPacket,
888                                                size_t apiCallPacketSize, uint64_t input_result,
889                                                VkDevice device,
890                                                const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
891 #endif
892 #ifdef VK_VERSION_1_3
893     void vkGetPhysicalDeviceToolProperties(android::base::BumpPool* pool,
894                                            VkSnapshotApiCallInfo* apiCallInfo,
895                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
896                                            VkResult input_result, VkPhysicalDevice physicalDevice,
897                                            uint32_t* pToolCount,
898                                            VkPhysicalDeviceToolProperties* pToolProperties);
899     void vkCreatePrivateDataSlot(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
900                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
901                                  VkResult input_result, VkDevice device,
902                                  const VkPrivateDataSlotCreateInfo* pCreateInfo,
903                                  const VkAllocationCallbacks* pAllocator,
904                                  VkPrivateDataSlot* pPrivateDataSlot);
905     void vkDestroyPrivateDataSlot(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
906                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
907                                   VkDevice device, VkPrivateDataSlot privateDataSlot,
908                                   const VkAllocationCallbacks* pAllocator);
909     void vkSetPrivateData(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
910                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
911                           VkResult input_result, VkDevice device, VkObjectType objectType,
912                           uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data);
913     void vkGetPrivateData(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
914                           const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
915                           VkObjectType objectType, uint64_t objectHandle,
916                           VkPrivateDataSlot privateDataSlot, uint64_t* pData);
917     void vkCmdSetEvent2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
918                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
919                         VkCommandBuffer commandBuffer, VkEvent event,
920                         const VkDependencyInfo* pDependencyInfo);
921     void vkCmdResetEvent2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
922                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
923                           VkCommandBuffer commandBuffer, VkEvent event,
924                           VkPipelineStageFlags2 stageMask);
925     void vkCmdWaitEvents2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
926                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
927                           VkCommandBuffer commandBuffer, uint32_t eventCount,
928                           const VkEvent* pEvents, const VkDependencyInfo* pDependencyInfos);
929     void vkCmdPipelineBarrier2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
930                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
931                                VkCommandBuffer commandBuffer,
932                                const VkDependencyInfo* pDependencyInfo);
933     void vkCmdWriteTimestamp2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
934                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
935                               VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage,
936                               VkQueryPool queryPool, uint32_t query);
937     void vkQueueSubmit2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
938                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
939                         VkResult input_result, VkQueue queue, uint32_t submitCount,
940                         const VkSubmitInfo2* pSubmits, VkFence fence);
941     void vkCmdCopyBuffer2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
942                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
943                           VkCommandBuffer commandBuffer, const VkCopyBufferInfo2* pCopyBufferInfo);
944     void vkCmdCopyImage2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
945                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
946                          VkCommandBuffer commandBuffer, const VkCopyImageInfo2* pCopyImageInfo);
947     void vkCmdCopyBufferToImage2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
948                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
949                                  VkCommandBuffer commandBuffer,
950                                  const VkCopyBufferToImageInfo2* pCopyBufferToImageInfo);
951     void vkCmdCopyImageToBuffer2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
952                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
953                                  VkCommandBuffer commandBuffer,
954                                  const VkCopyImageToBufferInfo2* pCopyImageToBufferInfo);
955     void vkCmdBlitImage2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
956                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
957                          VkCommandBuffer commandBuffer, const VkBlitImageInfo2* pBlitImageInfo);
958     void vkCmdResolveImage2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
959                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
960                             VkCommandBuffer commandBuffer,
961                             const VkResolveImageInfo2* pResolveImageInfo);
962     void vkCmdBeginRendering(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
963                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
964                              VkCommandBuffer commandBuffer, const VkRenderingInfo* pRenderingInfo);
965     void vkCmdEndRendering(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
966                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
967                            VkCommandBuffer commandBuffer);
968     void vkCmdSetCullMode(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
969                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
970                           VkCommandBuffer commandBuffer, VkCullModeFlags cullMode);
971     void vkCmdSetFrontFace(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
972                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
973                            VkCommandBuffer commandBuffer, VkFrontFace frontFace);
974     void vkCmdSetPrimitiveTopology(android::base::BumpPool* pool,
975                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
976                                    size_t apiCallPacketSize, VkCommandBuffer commandBuffer,
977                                    VkPrimitiveTopology primitiveTopology);
978     void vkCmdSetViewportWithCount(android::base::BumpPool* pool,
979                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
980                                    size_t apiCallPacketSize, VkCommandBuffer commandBuffer,
981                                    uint32_t viewportCount, const VkViewport* pViewports);
982     void vkCmdSetScissorWithCount(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
983                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
984                                   VkCommandBuffer commandBuffer, uint32_t scissorCount,
985                                   const VkRect2D* pScissors);
986     void vkCmdBindVertexBuffers2(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
987                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
988                                  VkCommandBuffer commandBuffer, uint32_t firstBinding,
989                                  uint32_t bindingCount, const VkBuffer* pBuffers,
990                                  const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes,
991                                  const VkDeviceSize* pStrides);
992     void vkCmdSetDepthTestEnable(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
993                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
994                                  VkCommandBuffer commandBuffer, VkBool32 depthTestEnable);
995     void vkCmdSetDepthWriteEnable(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
996                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
997                                   VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable);
998     void vkCmdSetDepthCompareOp(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
999                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1000                                 VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp);
1001     void vkCmdSetDepthBoundsTestEnable(android::base::BumpPool* pool,
1002                                        VkSnapshotApiCallInfo* apiCallInfo,
1003                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1004                                        VkCommandBuffer commandBuffer,
1005                                        VkBool32 depthBoundsTestEnable);
1006     void vkCmdSetStencilTestEnable(android::base::BumpPool* pool,
1007                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
1008                                    size_t apiCallPacketSize, VkCommandBuffer commandBuffer,
1009                                    VkBool32 stencilTestEnable);
1010     void vkCmdSetStencilOp(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1011                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1012                            VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask,
1013                            VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp,
1014                            VkCompareOp compareOp);
1015     void vkCmdSetRasterizerDiscardEnable(android::base::BumpPool* pool,
1016                                          VkSnapshotApiCallInfo* apiCallInfo,
1017                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1018                                          VkCommandBuffer commandBuffer,
1019                                          VkBool32 rasterizerDiscardEnable);
1020     void vkCmdSetDepthBiasEnable(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1021                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1022                                  VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable);
1023     void vkCmdSetPrimitiveRestartEnable(android::base::BumpPool* pool,
1024                                         VkSnapshotApiCallInfo* apiCallInfo,
1025                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1026                                         VkCommandBuffer commandBuffer,
1027                                         VkBool32 primitiveRestartEnable);
1028     void vkGetDeviceBufferMemoryRequirements(android::base::BumpPool* pool,
1029                                              VkSnapshotApiCallInfo* apiCallInfo,
1030                                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1031                                              VkDevice device,
1032                                              const VkDeviceBufferMemoryRequirements* pInfo,
1033                                              VkMemoryRequirements2* pMemoryRequirements);
1034     void vkGetDeviceImageMemoryRequirements(android::base::BumpPool* pool,
1035                                             VkSnapshotApiCallInfo* apiCallInfo,
1036                                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1037                                             VkDevice device,
1038                                             const VkDeviceImageMemoryRequirements* pInfo,
1039                                             VkMemoryRequirements2* pMemoryRequirements);
1040     void vkGetDeviceImageSparseMemoryRequirements(
1041         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1042         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
1043         const VkDeviceImageMemoryRequirements* pInfo, uint32_t* pSparseMemoryRequirementCount,
1044         VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
1045 #endif
1046 #ifdef VK_KHR_swapchain
1047     void vkCreateSwapchainKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1048                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1049                               VkResult input_result, VkDevice device,
1050                               const VkSwapchainCreateInfoKHR* pCreateInfo,
1051                               const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain);
1052     void vkDestroySwapchainKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1053                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1054                                VkDevice device, VkSwapchainKHR swapchain,
1055                                const VkAllocationCallbacks* pAllocator);
1056     void vkGetSwapchainImagesKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1057                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1058                                  VkResult input_result, VkDevice device, VkSwapchainKHR swapchain,
1059                                  uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages);
1060     void vkAcquireNextImageKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1061                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1062                                VkResult input_result, VkDevice device, VkSwapchainKHR swapchain,
1063                                uint64_t timeout, VkSemaphore semaphore, VkFence fence,
1064                                uint32_t* pImageIndex);
1065     void vkQueuePresentKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1066                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1067                            VkResult input_result, VkQueue queue,
1068                            const VkPresentInfoKHR* pPresentInfo);
1069     void vkGetDeviceGroupPresentCapabilitiesKHR(
1070         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1071         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1072         VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);
1073     void vkGetDeviceGroupSurfacePresentModesKHR(android::base::BumpPool* pool,
1074                                                 VkSnapshotApiCallInfo* apiCallInfo,
1075                                                 const uint8_t* apiCallPacket,
1076                                                 size_t apiCallPacketSize, VkResult input_result,
1077                                                 VkDevice device, VkSurfaceKHR surface,
1078                                                 VkDeviceGroupPresentModeFlagsKHR* pModes);
1079     void vkGetPhysicalDevicePresentRectanglesKHR(android::base::BumpPool* pool,
1080                                                  VkSnapshotApiCallInfo* apiCallInfo,
1081                                                  const uint8_t* apiCallPacket,
1082                                                  size_t apiCallPacketSize, VkResult input_result,
1083                                                  VkPhysicalDevice physicalDevice,
1084                                                  VkSurfaceKHR surface, uint32_t* pRectCount,
1085                                                  VkRect2D* pRects);
1086     void vkAcquireNextImage2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1087                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1088                                 VkResult input_result, VkDevice device,
1089                                 const VkAcquireNextImageInfoKHR* pAcquireInfo,
1090                                 uint32_t* pImageIndex);
1091 #endif
1092 #ifdef VK_KHR_dynamic_rendering
1093     void vkCmdBeginRenderingKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1094                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1095                                 VkCommandBuffer commandBuffer,
1096                                 const VkRenderingInfo* pRenderingInfo);
1097     void vkCmdEndRenderingKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1098                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1099                               VkCommandBuffer commandBuffer);
1100 #endif
1101 #ifdef VK_KHR_get_physical_device_properties2
1102     void vkGetPhysicalDeviceFeatures2KHR(android::base::BumpPool* pool,
1103                                          VkSnapshotApiCallInfo* apiCallInfo,
1104                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1105                                          VkPhysicalDevice physicalDevice,
1106                                          VkPhysicalDeviceFeatures2* pFeatures);
1107     void vkGetPhysicalDeviceProperties2KHR(android::base::BumpPool* pool,
1108                                            VkSnapshotApiCallInfo* apiCallInfo,
1109                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1110                                            VkPhysicalDevice physicalDevice,
1111                                            VkPhysicalDeviceProperties2* pProperties);
1112     void vkGetPhysicalDeviceFormatProperties2KHR(android::base::BumpPool* pool,
1113                                                  VkSnapshotApiCallInfo* apiCallInfo,
1114                                                  const uint8_t* apiCallPacket,
1115                                                  size_t apiCallPacketSize,
1116                                                  VkPhysicalDevice physicalDevice, VkFormat format,
1117                                                  VkFormatProperties2* pFormatProperties);
1118     void vkGetPhysicalDeviceImageFormatProperties2KHR(
1119         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1120         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1121         VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
1122         VkImageFormatProperties2* pImageFormatProperties);
1123     void vkGetPhysicalDeviceQueueFamilyProperties2KHR(
1124         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1125         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
1126         uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties);
1127     void vkGetPhysicalDeviceMemoryProperties2KHR(
1128         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1129         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
1130         VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
1131     void vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
1132         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1133         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
1134         const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount,
1135         VkSparseImageFormatProperties2* pProperties);
1136 #endif
1137 #ifdef VK_KHR_maintenance1
1138     void vkTrimCommandPoolKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1139                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1140                               VkDevice device, VkCommandPool commandPool,
1141                               VkCommandPoolTrimFlags flags);
1142 #endif
1143 #ifdef VK_KHR_external_memory_capabilities
1144     void vkGetPhysicalDeviceExternalBufferPropertiesKHR(
1145         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1146         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
1147         const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
1148         VkExternalBufferProperties* pExternalBufferProperties);
1149 #endif
1150 #ifdef VK_KHR_external_semaphore_capabilities
1151     void vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(
1152         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1153         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
1154         const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
1155         VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
1156 #endif
1157 #ifdef VK_KHR_external_semaphore_fd
1158     void vkImportSemaphoreFdKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1159                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1160                                 VkResult input_result, VkDevice device,
1161                                 const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);
1162     void vkGetSemaphoreFdKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1163                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1164                              VkResult input_result, VkDevice device,
1165                              const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd);
1166 #endif
1167 #ifdef VK_KHR_descriptor_update_template
1168     void vkCreateDescriptorUpdateTemplateKHR(
1169         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1170         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1171         VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
1172         const VkAllocationCallbacks* pAllocator,
1173         VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
1174     void vkDestroyDescriptorUpdateTemplateKHR(android::base::BumpPool* pool,
1175                                               VkSnapshotApiCallInfo* apiCallInfo,
1176                                               const uint8_t* apiCallPacket,
1177                                               size_t apiCallPacketSize, VkDevice device,
1178                                               VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1179                                               const VkAllocationCallbacks* pAllocator);
1180     void vkUpdateDescriptorSetWithTemplateKHR(android::base::BumpPool* pool,
1181                                               VkSnapshotApiCallInfo* apiCallInfo,
1182                                               const uint8_t* apiCallPacket,
1183                                               size_t apiCallPacketSize, VkDevice device,
1184                                               VkDescriptorSet descriptorSet,
1185                                               VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1186                                               const void* pData);
1187 #endif
1188 #ifdef VK_KHR_create_renderpass2
1189     void vkCreateRenderPass2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1190                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1191                                 VkResult input_result, VkDevice device,
1192                                 const VkRenderPassCreateInfo2* pCreateInfo,
1193                                 const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass);
1194     void vkCmdBeginRenderPass2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1195                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1196                                   VkCommandBuffer commandBuffer,
1197                                   const VkRenderPassBeginInfo* pRenderPassBegin,
1198                                   const VkSubpassBeginInfo* pSubpassBeginInfo);
1199     void vkCmdNextSubpass2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1200                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1201                               VkCommandBuffer commandBuffer,
1202                               const VkSubpassBeginInfo* pSubpassBeginInfo,
1203                               const VkSubpassEndInfo* pSubpassEndInfo);
1204     void vkCmdEndRenderPass2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1205                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1206                                 VkCommandBuffer commandBuffer,
1207                                 const VkSubpassEndInfo* pSubpassEndInfo);
1208 #endif
1209 #ifdef VK_KHR_external_fence_capabilities
1210     void vkGetPhysicalDeviceExternalFencePropertiesKHR(
1211         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1212         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkPhysicalDevice physicalDevice,
1213         const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
1214         VkExternalFenceProperties* pExternalFenceProperties);
1215 #endif
1216 #ifdef VK_KHR_external_fence_fd
1217     void vkImportFenceFdKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1218                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1219                             VkResult input_result, VkDevice device,
1220                             const VkImportFenceFdInfoKHR* pImportFenceFdInfo);
1221     void vkGetFenceFdKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1222                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1223                          VkResult input_result, VkDevice device,
1224                          const VkFenceGetFdInfoKHR* pGetFdInfo, int* pFd);
1225 #endif
1226 #ifdef VK_KHR_get_memory_requirements2
1227     void vkGetImageMemoryRequirements2KHR(android::base::BumpPool* pool,
1228                                           VkSnapshotApiCallInfo* apiCallInfo,
1229                                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1230                                           VkDevice device,
1231                                           const VkImageMemoryRequirementsInfo2* pInfo,
1232                                           VkMemoryRequirements2* pMemoryRequirements);
1233     void vkGetBufferMemoryRequirements2KHR(android::base::BumpPool* pool,
1234                                            VkSnapshotApiCallInfo* apiCallInfo,
1235                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1236                                            VkDevice device,
1237                                            const VkBufferMemoryRequirementsInfo2* pInfo,
1238                                            VkMemoryRequirements2* pMemoryRequirements);
1239     void vkGetImageSparseMemoryRequirements2KHR(
1240         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1241         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
1242         const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount,
1243         VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
1244 #endif
1245 #ifdef VK_KHR_sampler_ycbcr_conversion
1246     void vkCreateSamplerYcbcrConversionKHR(android::base::BumpPool* pool,
1247                                            VkSnapshotApiCallInfo* apiCallInfo,
1248                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1249                                            VkResult input_result, VkDevice device,
1250                                            const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
1251                                            const VkAllocationCallbacks* pAllocator,
1252                                            VkSamplerYcbcrConversion* pYcbcrConversion);
1253     void vkDestroySamplerYcbcrConversionKHR(android::base::BumpPool* pool,
1254                                             VkSnapshotApiCallInfo* apiCallInfo,
1255                                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1256                                             VkDevice device,
1257                                             VkSamplerYcbcrConversion ycbcrConversion,
1258                                             const VkAllocationCallbacks* pAllocator);
1259 #endif
1260 #ifdef VK_KHR_bind_memory2
1261     void vkBindBufferMemory2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1262                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1263                                 VkResult input_result, VkDevice device, uint32_t bindInfoCount,
1264                                 const VkBindBufferMemoryInfo* pBindInfos);
1265     void vkBindImageMemory2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1266                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1267                                VkResult input_result, VkDevice device, uint32_t bindInfoCount,
1268                                const VkBindImageMemoryInfo* pBindInfos);
1269 #endif
1270 #ifdef VK_KHR_maintenance3
1271     void vkGetDescriptorSetLayoutSupportKHR(android::base::BumpPool* pool,
1272                                             VkSnapshotApiCallInfo* apiCallInfo,
1273                                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1274                                             VkDevice device,
1275                                             const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
1276                                             VkDescriptorSetLayoutSupport* pSupport);
1277 #endif
1278 #ifdef VK_KHR_buffer_device_address
1279     void vkGetBufferDeviceAddressKHR(android::base::BumpPool* pool,
1280                                      VkSnapshotApiCallInfo* apiCallInfo,
1281                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1282                                      VkDeviceAddress input_result, VkDevice device,
1283                                      const VkBufferDeviceAddressInfo* pInfo);
1284     void vkGetBufferOpaqueCaptureAddressKHR(android::base::BumpPool* pool,
1285                                             VkSnapshotApiCallInfo* apiCallInfo,
1286                                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1287                                             uint64_t input_result, VkDevice device,
1288                                             const VkBufferDeviceAddressInfo* pInfo);
1289     void vkGetDeviceMemoryOpaqueCaptureAddressKHR(
1290         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1291         const uint8_t* apiCallPacket, size_t apiCallPacketSize, uint64_t input_result,
1292         VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
1293 #endif
1294 #ifdef VK_KHR_pipeline_executable_properties
1295     void vkGetPipelineExecutablePropertiesKHR(
1296         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1297         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1298         VkDevice device, const VkPipelineInfoKHR* pPipelineInfo, uint32_t* pExecutableCount,
1299         VkPipelineExecutablePropertiesKHR* pProperties);
1300     void vkGetPipelineExecutableStatisticsKHR(
1301         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1302         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1303         VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo,
1304         uint32_t* pStatisticCount, VkPipelineExecutableStatisticKHR* pStatistics);
1305     void vkGetPipelineExecutableInternalRepresentationsKHR(
1306         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1307         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1308         VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo,
1309         uint32_t* pInternalRepresentationCount,
1310         VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations);
1311 #endif
1312 #ifdef VK_KHR_synchronization2
1313     void vkCmdSetEvent2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1314                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1315                            VkCommandBuffer commandBuffer, VkEvent event,
1316                            const VkDependencyInfo* pDependencyInfo);
1317     void vkCmdResetEvent2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1318                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1319                              VkCommandBuffer commandBuffer, VkEvent event,
1320                              VkPipelineStageFlags2 stageMask);
1321     void vkCmdWaitEvents2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1322                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1323                              VkCommandBuffer commandBuffer, uint32_t eventCount,
1324                              const VkEvent* pEvents, const VkDependencyInfo* pDependencyInfos);
1325     void vkCmdPipelineBarrier2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1326                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1327                                   VkCommandBuffer commandBuffer,
1328                                   const VkDependencyInfo* pDependencyInfo);
1329     void vkCmdWriteTimestamp2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1330                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1331                                  VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage,
1332                                  VkQueryPool queryPool, uint32_t query);
1333     void vkQueueSubmit2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1334                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1335                            VkResult input_result, VkQueue queue, uint32_t submitCount,
1336                            const VkSubmitInfo2* pSubmits, VkFence fence);
1337     void vkCmdWriteBufferMarker2AMD(android::base::BumpPool* pool,
1338                                     VkSnapshotApiCallInfo* apiCallInfo,
1339                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1340                                     VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage,
1341                                     VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker);
1342     void vkGetQueueCheckpointData2NV(android::base::BumpPool* pool,
1343                                      VkSnapshotApiCallInfo* apiCallInfo,
1344                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1345                                      VkQueue queue, uint32_t* pCheckpointDataCount,
1346                                      VkCheckpointData2NV* pCheckpointData);
1347 #endif
1348 #ifdef VK_KHR_copy_commands2
1349     void vkCmdCopyBuffer2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1350                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1351                              VkCommandBuffer commandBuffer,
1352                              const VkCopyBufferInfo2* pCopyBufferInfo);
1353     void vkCmdCopyImage2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1354                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1355                             VkCommandBuffer commandBuffer, const VkCopyImageInfo2* pCopyImageInfo);
1356     void vkCmdCopyBufferToImage2KHR(android::base::BumpPool* pool,
1357                                     VkSnapshotApiCallInfo* apiCallInfo,
1358                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1359                                     VkCommandBuffer commandBuffer,
1360                                     const VkCopyBufferToImageInfo2* pCopyBufferToImageInfo);
1361     void vkCmdCopyImageToBuffer2KHR(android::base::BumpPool* pool,
1362                                     VkSnapshotApiCallInfo* apiCallInfo,
1363                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1364                                     VkCommandBuffer commandBuffer,
1365                                     const VkCopyImageToBufferInfo2* pCopyImageToBufferInfo);
1366     void vkCmdBlitImage2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1367                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1368                             VkCommandBuffer commandBuffer, const VkBlitImageInfo2* pBlitImageInfo);
1369     void vkCmdResolveImage2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1370                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1371                                VkCommandBuffer commandBuffer,
1372                                const VkResolveImageInfo2* pResolveImageInfo);
1373 #endif
1374 #ifdef VK_KHR_maintenance4
1375     void vkGetDeviceBufferMemoryRequirementsKHR(android::base::BumpPool* pool,
1376                                                 VkSnapshotApiCallInfo* apiCallInfo,
1377                                                 const uint8_t* apiCallPacket,
1378                                                 size_t apiCallPacketSize, VkDevice device,
1379                                                 const VkDeviceBufferMemoryRequirements* pInfo,
1380                                                 VkMemoryRequirements2* pMemoryRequirements);
1381     void vkGetDeviceImageMemoryRequirementsKHR(android::base::BumpPool* pool,
1382                                                VkSnapshotApiCallInfo* apiCallInfo,
1383                                                const uint8_t* apiCallPacket,
1384                                                size_t apiCallPacketSize, VkDevice device,
1385                                                const VkDeviceImageMemoryRequirements* pInfo,
1386                                                VkMemoryRequirements2* pMemoryRequirements);
1387     void vkGetDeviceImageSparseMemoryRequirementsKHR(
1388         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1389         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
1390         const VkDeviceImageMemoryRequirements* pInfo, uint32_t* pSparseMemoryRequirementCount,
1391         VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
1392 #endif
1393 #ifdef VK_KHR_maintenance5
1394     void vkCmdBindIndexBuffer2KHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1395                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1396                                   VkCommandBuffer commandBuffer, VkBuffer buffer,
1397                                   VkDeviceSize offset, VkDeviceSize size, VkIndexType indexType);
1398     void vkGetRenderingAreaGranularityKHR(android::base::BumpPool* pool,
1399                                           VkSnapshotApiCallInfo* apiCallInfo,
1400                                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1401                                           VkDevice device,
1402                                           const VkRenderingAreaInfoKHR* pRenderingAreaInfo,
1403                                           VkExtent2D* pGranularity);
1404     void vkGetDeviceImageSubresourceLayoutKHR(android::base::BumpPool* pool,
1405                                               VkSnapshotApiCallInfo* apiCallInfo,
1406                                               const uint8_t* apiCallPacket,
1407                                               size_t apiCallPacketSize, VkDevice device,
1408                                               const VkDeviceImageSubresourceInfoKHR* pInfo,
1409                                               VkSubresourceLayout2KHR* pLayout);
1410     void vkGetImageSubresourceLayout2KHR(android::base::BumpPool* pool,
1411                                          VkSnapshotApiCallInfo* apiCallInfo,
1412                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1413                                          VkDevice device, VkImage image,
1414                                          const VkImageSubresource2KHR* pSubresource,
1415                                          VkSubresourceLayout2KHR* pLayout);
1416 #endif
1417 #ifdef VK_KHR_line_rasterization
1418     void vkCmdSetLineStippleKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1419                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1420                                 VkCommandBuffer commandBuffer, uint32_t lineStippleFactor,
1421                                 uint16_t lineStipplePattern);
1422 #endif
1423 #ifdef VK_ANDROID_native_buffer
1424     void vkGetSwapchainGrallocUsageANDROID(android::base::BumpPool* pool,
1425                                            VkSnapshotApiCallInfo* apiCallInfo,
1426                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1427                                            VkResult input_result, VkDevice device, VkFormat format,
1428                                            VkImageUsageFlags imageUsage, int* grallocUsage);
1429     void vkAcquireImageANDROID(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1430                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1431                                VkResult input_result, VkDevice device, VkImage image,
1432                                int nativeFenceFd, VkSemaphore semaphore, VkFence fence);
1433     void vkQueueSignalReleaseImageANDROID(android::base::BumpPool* pool,
1434                                           VkSnapshotApiCallInfo* apiCallInfo,
1435                                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1436                                           VkResult input_result, VkQueue queue,
1437                                           uint32_t waitSemaphoreCount,
1438                                           const VkSemaphore* pWaitSemaphores, VkImage image,
1439                                           int* pNativeFenceFd);
1440     void vkGetSwapchainGrallocUsage2ANDROID(android::base::BumpPool* pool,
1441                                             VkSnapshotApiCallInfo* apiCallInfo,
1442                                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1443                                             VkResult input_result, VkDevice device, VkFormat format,
1444                                             VkImageUsageFlags imageUsage,
1445                                             VkSwapchainImageUsageFlagsANDROID swapchainImageUsage,
1446                                             uint64_t* grallocConsumerUsage,
1447                                             uint64_t* grallocProducerUsage);
1448 #endif
1449 #ifdef VK_EXT_debug_report
1450     void vkCreateDebugReportCallbackEXT(android::base::BumpPool* pool,
1451                                         VkSnapshotApiCallInfo* apiCallInfo,
1452                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1453                                         VkResult input_result, VkInstance instance,
1454                                         const VkDebugReportCallbackCreateInfoEXT* pCreateInfo,
1455                                         const VkAllocationCallbacks* pAllocator,
1456                                         VkDebugReportCallbackEXT* pCallback);
1457     void vkDestroyDebugReportCallbackEXT(android::base::BumpPool* pool,
1458                                          VkSnapshotApiCallInfo* apiCallInfo,
1459                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1460                                          VkInstance instance, VkDebugReportCallbackEXT callback,
1461                                          const VkAllocationCallbacks* pAllocator);
1462     void vkDebugReportMessageEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1463                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1464                                  VkInstance instance, VkDebugReportFlagsEXT flags,
1465                                  VkDebugReportObjectTypeEXT objectType, uint64_t object,
1466                                  size_t location, int32_t messageCode, const char* pLayerPrefix,
1467                                  const char* pMessage);
1468 #endif
1469 #ifdef VK_EXT_transform_feedback
1470     void vkCmdBindTransformFeedbackBuffersEXT(
1471         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1472         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkCommandBuffer commandBuffer,
1473         uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers,
1474         const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes);
1475     void vkCmdBeginTransformFeedbackEXT(android::base::BumpPool* pool,
1476                                         VkSnapshotApiCallInfo* apiCallInfo,
1477                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1478                                         VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer,
1479                                         uint32_t counterBufferCount,
1480                                         const VkBuffer* pCounterBuffers,
1481                                         const VkDeviceSize* pCounterBufferOffsets);
1482     void vkCmdEndTransformFeedbackEXT(android::base::BumpPool* pool,
1483                                       VkSnapshotApiCallInfo* apiCallInfo,
1484                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1485                                       VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer,
1486                                       uint32_t counterBufferCount, const VkBuffer* pCounterBuffers,
1487                                       const VkDeviceSize* pCounterBufferOffsets);
1488     void vkCmdBeginQueryIndexedEXT(android::base::BumpPool* pool,
1489                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
1490                                    size_t apiCallPacketSize, VkCommandBuffer commandBuffer,
1491                                    VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags,
1492                                    uint32_t index);
1493     void vkCmdEndQueryIndexedEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1494                                  const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1495                                  VkCommandBuffer commandBuffer, VkQueryPool queryPool,
1496                                  uint32_t query, uint32_t index);
1497     void vkCmdDrawIndirectByteCountEXT(android::base::BumpPool* pool,
1498                                        VkSnapshotApiCallInfo* apiCallInfo,
1499                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1500                                        VkCommandBuffer commandBuffer, uint32_t instanceCount,
1501                                        uint32_t firstInstance, VkBuffer counterBuffer,
1502                                        VkDeviceSize counterBufferOffset, uint32_t counterOffset,
1503                                        uint32_t vertexStride);
1504 #endif
1505 #ifdef VK_EXT_debug_utils
1506     void vkSetDebugUtilsObjectNameEXT(android::base::BumpPool* pool,
1507                                       VkSnapshotApiCallInfo* apiCallInfo,
1508                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1509                                       VkResult input_result, VkDevice device,
1510                                       const VkDebugUtilsObjectNameInfoEXT* pNameInfo);
1511     void vkSetDebugUtilsObjectTagEXT(android::base::BumpPool* pool,
1512                                      VkSnapshotApiCallInfo* apiCallInfo,
1513                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1514                                      VkResult input_result, VkDevice device,
1515                                      const VkDebugUtilsObjectTagInfoEXT* pTagInfo);
1516     void vkQueueBeginDebugUtilsLabelEXT(android::base::BumpPool* pool,
1517                                         VkSnapshotApiCallInfo* apiCallInfo,
1518                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1519                                         VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo);
1520     void vkQueueEndDebugUtilsLabelEXT(android::base::BumpPool* pool,
1521                                       VkSnapshotApiCallInfo* apiCallInfo,
1522                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1523                                       VkQueue queue);
1524     void vkQueueInsertDebugUtilsLabelEXT(android::base::BumpPool* pool,
1525                                          VkSnapshotApiCallInfo* apiCallInfo,
1526                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1527                                          VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo);
1528     void vkCmdBeginDebugUtilsLabelEXT(android::base::BumpPool* pool,
1529                                       VkSnapshotApiCallInfo* apiCallInfo,
1530                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1531                                       VkCommandBuffer commandBuffer,
1532                                       const VkDebugUtilsLabelEXT* pLabelInfo);
1533     void vkCmdEndDebugUtilsLabelEXT(android::base::BumpPool* pool,
1534                                     VkSnapshotApiCallInfo* apiCallInfo,
1535                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1536                                     VkCommandBuffer commandBuffer);
1537     void vkCmdInsertDebugUtilsLabelEXT(android::base::BumpPool* pool,
1538                                        VkSnapshotApiCallInfo* apiCallInfo,
1539                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1540                                        VkCommandBuffer commandBuffer,
1541                                        const VkDebugUtilsLabelEXT* pLabelInfo);
1542     void vkCreateDebugUtilsMessengerEXT(android::base::BumpPool* pool,
1543                                         VkSnapshotApiCallInfo* apiCallInfo,
1544                                         const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1545                                         VkResult input_result, VkInstance instance,
1546                                         const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo,
1547                                         const VkAllocationCallbacks* pAllocator,
1548                                         VkDebugUtilsMessengerEXT* pMessenger);
1549     void vkDestroyDebugUtilsMessengerEXT(android::base::BumpPool* pool,
1550                                          VkSnapshotApiCallInfo* apiCallInfo,
1551                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1552                                          VkInstance instance, VkDebugUtilsMessengerEXT messenger,
1553                                          const VkAllocationCallbacks* pAllocator);
1554     void vkSubmitDebugUtilsMessageEXT(android::base::BumpPool* pool,
1555                                       VkSnapshotApiCallInfo* apiCallInfo,
1556                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1557                                       VkInstance instance,
1558                                       VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
1559                                       VkDebugUtilsMessageTypeFlagsEXT messageTypes,
1560                                       const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);
1561 #endif
1562 #ifdef VK_EXT_image_drm_format_modifier
1563     void vkGetImageDrmFormatModifierPropertiesEXT(
1564         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1565         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1566         VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT* pProperties);
1567 #endif
1568 #ifdef VK_EXT_external_memory_host
1569     void vkGetMemoryHostPointerPropertiesEXT(
1570         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1571         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1572         VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer,
1573         VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);
1574 #endif
1575 #ifdef VK_EXT_tooling_info
1576     void vkGetPhysicalDeviceToolPropertiesEXT(android::base::BumpPool* pool,
1577                                               VkSnapshotApiCallInfo* apiCallInfo,
1578                                               const uint8_t* apiCallPacket,
1579                                               size_t apiCallPacketSize, VkResult input_result,
1580                                               VkPhysicalDevice physicalDevice, uint32_t* pToolCount,
1581                                               VkPhysicalDeviceToolProperties* pToolProperties);
1582 #endif
1583 #ifdef VK_EXT_line_rasterization
1584     void vkCmdSetLineStippleEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1585                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1586                                 VkCommandBuffer commandBuffer, uint32_t lineStippleFactor,
1587                                 uint16_t lineStipplePattern);
1588 #endif
1589 #ifdef VK_EXT_extended_dynamic_state
1590     void vkCmdSetCullModeEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1591                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1592                              VkCommandBuffer commandBuffer, VkCullModeFlags cullMode);
1593     void vkCmdSetFrontFaceEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1594                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1595                               VkCommandBuffer commandBuffer, VkFrontFace frontFace);
1596     void vkCmdSetPrimitiveTopologyEXT(android::base::BumpPool* pool,
1597                                       VkSnapshotApiCallInfo* apiCallInfo,
1598                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1599                                       VkCommandBuffer commandBuffer,
1600                                       VkPrimitiveTopology primitiveTopology);
1601     void vkCmdSetViewportWithCountEXT(android::base::BumpPool* pool,
1602                                       VkSnapshotApiCallInfo* apiCallInfo,
1603                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1604                                       VkCommandBuffer commandBuffer, uint32_t viewportCount,
1605                                       const VkViewport* pViewports);
1606     void vkCmdSetScissorWithCountEXT(android::base::BumpPool* pool,
1607                                      VkSnapshotApiCallInfo* apiCallInfo,
1608                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1609                                      VkCommandBuffer commandBuffer, uint32_t scissorCount,
1610                                      const VkRect2D* pScissors);
1611     void vkCmdBindVertexBuffers2EXT(android::base::BumpPool* pool,
1612                                     VkSnapshotApiCallInfo* apiCallInfo,
1613                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1614                                     VkCommandBuffer commandBuffer, uint32_t firstBinding,
1615                                     uint32_t bindingCount, const VkBuffer* pBuffers,
1616                                     const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes,
1617                                     const VkDeviceSize* pStrides);
1618     void vkCmdSetDepthTestEnableEXT(android::base::BumpPool* pool,
1619                                     VkSnapshotApiCallInfo* apiCallInfo,
1620                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1621                                     VkCommandBuffer commandBuffer, VkBool32 depthTestEnable);
1622     void vkCmdSetDepthWriteEnableEXT(android::base::BumpPool* pool,
1623                                      VkSnapshotApiCallInfo* apiCallInfo,
1624                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1625                                      VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable);
1626     void vkCmdSetDepthCompareOpEXT(android::base::BumpPool* pool,
1627                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
1628                                    size_t apiCallPacketSize, VkCommandBuffer commandBuffer,
1629                                    VkCompareOp depthCompareOp);
1630     void vkCmdSetDepthBoundsTestEnableEXT(android::base::BumpPool* pool,
1631                                           VkSnapshotApiCallInfo* apiCallInfo,
1632                                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1633                                           VkCommandBuffer commandBuffer,
1634                                           VkBool32 depthBoundsTestEnable);
1635     void vkCmdSetStencilTestEnableEXT(android::base::BumpPool* pool,
1636                                       VkSnapshotApiCallInfo* apiCallInfo,
1637                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1638                                       VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable);
1639     void vkCmdSetStencilOpEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1640                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1641                               VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask,
1642                               VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp,
1643                               VkCompareOp compareOp);
1644 #endif
1645 #ifdef VK_EXT_host_image_copy
1646     void vkCopyMemoryToImageEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1647                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1648                                 VkResult input_result, VkDevice device,
1649                                 const VkCopyMemoryToImageInfoEXT* pCopyMemoryToImageInfo);
1650     void vkCopyImageToMemoryEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1651                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1652                                 VkResult input_result, VkDevice device,
1653                                 const VkCopyImageToMemoryInfoEXT* pCopyImageToMemoryInfo);
1654     void vkCopyImageToImageEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1655                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1656                                VkResult input_result, VkDevice device,
1657                                const VkCopyImageToImageInfoEXT* pCopyImageToImageInfo);
1658     void vkTransitionImageLayoutEXT(android::base::BumpPool* pool,
1659                                     VkSnapshotApiCallInfo* apiCallInfo,
1660                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1661                                     VkResult input_result, VkDevice device,
1662                                     uint32_t transitionCount,
1663                                     const VkHostImageLayoutTransitionInfoEXT* pTransitions);
1664     void vkGetImageSubresourceLayout2EXT(android::base::BumpPool* pool,
1665                                          VkSnapshotApiCallInfo* apiCallInfo,
1666                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1667                                          VkDevice device, VkImage image,
1668                                          const VkImageSubresource2KHR* pSubresource,
1669                                          VkSubresourceLayout2KHR* pLayout);
1670 #endif
1671 #ifdef VK_EXT_swapchain_maintenance1
1672     void vkReleaseSwapchainImagesEXT(android::base::BumpPool* pool,
1673                                      VkSnapshotApiCallInfo* apiCallInfo,
1674                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1675                                      VkResult input_result, VkDevice device,
1676                                      const VkReleaseSwapchainImagesInfoEXT* pReleaseInfo);
1677 #endif
1678 #ifdef VK_EXT_private_data
1679     void vkCreatePrivateDataSlotEXT(android::base::BumpPool* pool,
1680                                     VkSnapshotApiCallInfo* apiCallInfo,
1681                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1682                                     VkResult input_result, VkDevice device,
1683                                     const VkPrivateDataSlotCreateInfo* pCreateInfo,
1684                                     const VkAllocationCallbacks* pAllocator,
1685                                     VkPrivateDataSlot* pPrivateDataSlot);
1686     void vkDestroyPrivateDataSlotEXT(android::base::BumpPool* pool,
1687                                      VkSnapshotApiCallInfo* apiCallInfo,
1688                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1689                                      VkDevice device, VkPrivateDataSlot privateDataSlot,
1690                                      const VkAllocationCallbacks* pAllocator);
1691     void vkSetPrivateDataEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1692                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1693                              VkResult input_result, VkDevice device, VkObjectType objectType,
1694                              uint64_t objectHandle, VkPrivateDataSlot privateDataSlot,
1695                              uint64_t data);
1696     void vkGetPrivateDataEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1697                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1698                              VkDevice device, VkObjectType objectType, uint64_t objectHandle,
1699                              VkPrivateDataSlot privateDataSlot, uint64_t* pData);
1700 #endif
1701 #ifdef VK_EXT_extended_dynamic_state2
1702     void vkCmdSetPatchControlPointsEXT(android::base::BumpPool* pool,
1703                                        VkSnapshotApiCallInfo* apiCallInfo,
1704                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1705                                        VkCommandBuffer commandBuffer, uint32_t patchControlPoints);
1706     void vkCmdSetRasterizerDiscardEnableEXT(android::base::BumpPool* pool,
1707                                             VkSnapshotApiCallInfo* apiCallInfo,
1708                                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1709                                             VkCommandBuffer commandBuffer,
1710                                             VkBool32 rasterizerDiscardEnable);
1711     void vkCmdSetDepthBiasEnableEXT(android::base::BumpPool* pool,
1712                                     VkSnapshotApiCallInfo* apiCallInfo,
1713                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1714                                     VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable);
1715     void vkCmdSetLogicOpEXT(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1716                             const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1717                             VkCommandBuffer commandBuffer, VkLogicOp logicOp);
1718     void vkCmdSetPrimitiveRestartEnableEXT(android::base::BumpPool* pool,
1719                                            VkSnapshotApiCallInfo* apiCallInfo,
1720                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1721                                            VkCommandBuffer commandBuffer,
1722                                            VkBool32 primitiveRestartEnable);
1723 #endif
1724 #ifdef VK_EXT_color_write_enable
1725     void vkCmdSetColorWriteEnableEXT(android::base::BumpPool* pool,
1726                                      VkSnapshotApiCallInfo* apiCallInfo,
1727                                      const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1728                                      VkCommandBuffer commandBuffer, uint32_t attachmentCount,
1729                                      const VkBool32* pColorWriteEnables);
1730 #endif
1731 #ifdef VK_GOOGLE_gfxstream
1732     void vkMapMemoryIntoAddressSpaceGOOGLE(android::base::BumpPool* pool,
1733                                            VkSnapshotApiCallInfo* apiCallInfo,
1734                                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1735                                            VkResult input_result, VkDevice device,
1736                                            VkDeviceMemory memory, uint64_t* pAddress);
1737     void vkUpdateDescriptorSetWithTemplateSizedGOOGLE(
1738         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1739         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
1740         VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1741         uint32_t imageInfoCount, uint32_t bufferInfoCount, uint32_t bufferViewCount,
1742         const uint32_t* pImageInfoEntryIndices, const uint32_t* pBufferInfoEntryIndices,
1743         const uint32_t* pBufferViewEntryIndices, const VkDescriptorImageInfo* pImageInfos,
1744         const VkDescriptorBufferInfo* pBufferInfos, const VkBufferView* pBufferViews);
1745     void vkBeginCommandBufferAsyncGOOGLE(android::base::BumpPool* pool,
1746                                          VkSnapshotApiCallInfo* apiCallInfo,
1747                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1748                                          VkCommandBuffer commandBuffer,
1749                                          const VkCommandBufferBeginInfo* pBeginInfo);
1750     void vkEndCommandBufferAsyncGOOGLE(android::base::BumpPool* pool,
1751                                        VkSnapshotApiCallInfo* apiCallInfo,
1752                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1753                                        VkCommandBuffer commandBuffer);
1754     void vkResetCommandBufferAsyncGOOGLE(android::base::BumpPool* pool,
1755                                          VkSnapshotApiCallInfo* apiCallInfo,
1756                                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1757                                          VkCommandBuffer commandBuffer,
1758                                          VkCommandBufferResetFlags flags);
1759     void vkCommandBufferHostSyncGOOGLE(android::base::BumpPool* pool,
1760                                        VkSnapshotApiCallInfo* apiCallInfo,
1761                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1762                                        VkCommandBuffer commandBuffer, uint32_t needHostSync,
1763                                        uint32_t sequenceNumber);
1764     void vkCreateImageWithRequirementsGOOGLE(android::base::BumpPool* pool,
1765                                              VkSnapshotApiCallInfo* apiCallInfo,
1766                                              const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1767                                              VkResult input_result, VkDevice device,
1768                                              const VkImageCreateInfo* pCreateInfo,
1769                                              const VkAllocationCallbacks* pAllocator,
1770                                              VkImage* pImage,
1771                                              VkMemoryRequirements* pMemoryRequirements);
1772     void vkCreateBufferWithRequirementsGOOGLE(
1773         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1774         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1775         VkDevice device, const VkBufferCreateInfo* pCreateInfo,
1776         const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer,
1777         VkMemoryRequirements* pMemoryRequirements);
1778     void vkGetMemoryHostAddressInfoGOOGLE(android::base::BumpPool* pool,
1779                                           VkSnapshotApiCallInfo* apiCallInfo,
1780                                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1781                                           VkResult input_result, VkDevice device,
1782                                           VkDeviceMemory memory, uint64_t* pAddress,
1783                                           uint64_t* pSize, uint64_t* pHostmemId);
1784     void vkFreeMemorySyncGOOGLE(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1785                                 const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1786                                 VkResult input_result, VkDevice device, VkDeviceMemory memory,
1787                                 const VkAllocationCallbacks* pAllocator);
1788     void vkQueueHostSyncGOOGLE(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1789                                const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1790                                VkQueue queue, uint32_t needHostSync, uint32_t sequenceNumber);
1791     void vkQueueSubmitAsyncGOOGLE(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1792                                   const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1793                                   VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits,
1794                                   VkFence fence);
1795     void vkQueueWaitIdleAsyncGOOGLE(android::base::BumpPool* pool,
1796                                     VkSnapshotApiCallInfo* apiCallInfo,
1797                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1798                                     VkQueue queue);
1799     void vkQueueBindSparseAsyncGOOGLE(android::base::BumpPool* pool,
1800                                       VkSnapshotApiCallInfo* apiCallInfo,
1801                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1802                                       VkQueue queue, uint32_t bindInfoCount,
1803                                       const VkBindSparseInfo* pBindInfo, VkFence fence);
1804     void vkGetLinearImageLayoutGOOGLE(android::base::BumpPool* pool,
1805                                       VkSnapshotApiCallInfo* apiCallInfo,
1806                                       const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1807                                       VkDevice device, VkFormat format, VkDeviceSize* pOffset,
1808                                       VkDeviceSize* pRowPitchAlignment);
1809     void vkGetLinearImageLayout2GOOGLE(android::base::BumpPool* pool,
1810                                        VkSnapshotApiCallInfo* apiCallInfo,
1811                                        const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1812                                        VkDevice device, const VkImageCreateInfo* pCreateInfo,
1813                                        VkDeviceSize* pOffset, VkDeviceSize* pRowPitchAlignment);
1814     void vkQueueFlushCommandsGOOGLE(android::base::BumpPool* pool,
1815                                     VkSnapshotApiCallInfo* apiCallInfo,
1816                                     const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1817                                     VkQueue queue, VkCommandBuffer commandBuffer,
1818                                     VkDeviceSize dataSize, const void* pData);
1819     void vkQueueCommitDescriptorSetUpdatesGOOGLE(
1820         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1821         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkQueue queue,
1822         uint32_t descriptorPoolCount, const VkDescriptorPool* pDescriptorPools,
1823         uint32_t descriptorSetCount, const VkDescriptorSetLayout* pSetLayouts,
1824         const uint64_t* pDescriptorSetPoolIds, const uint32_t* pDescriptorSetWhichPool,
1825         const uint32_t* pDescriptorSetPendingAllocation,
1826         const uint32_t* pDescriptorWriteStartingIndices, uint32_t pendingDescriptorWriteCount,
1827         const VkWriteDescriptorSet* pPendingDescriptorWrites);
1828     void vkCollectDescriptorPoolIdsGOOGLE(android::base::BumpPool* pool,
1829                                           VkSnapshotApiCallInfo* apiCallInfo,
1830                                           const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1831                                           VkDevice device, VkDescriptorPool descriptorPool,
1832                                           uint32_t* pPoolIdCount, uint64_t* pPoolIds);
1833     void vkQueueSignalReleaseImageANDROIDAsyncGOOGLE(
1834         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1835         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkQueue queue,
1836         uint32_t waitSemaphoreCount, const VkSemaphore* pWaitSemaphores, VkImage image);
1837     void vkQueueFlushCommandsFromAuxMemoryGOOGLE(android::base::BumpPool* pool,
1838                                                  VkSnapshotApiCallInfo* apiCallInfo,
1839                                                  const uint8_t* apiCallPacket,
1840                                                  size_t apiCallPacketSize, VkQueue queue,
1841                                                  VkCommandBuffer commandBuffer,
1842                                                  VkDeviceMemory deviceMemory,
1843                                                  VkDeviceSize dataOffset, VkDeviceSize dataSize);
1844     void vkGetBlobGOOGLE(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1845                          const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1846                          VkResult input_result, VkDevice device, VkDeviceMemory memory);
1847     void vkUpdateDescriptorSetWithTemplateSized2GOOGLE(
1848         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1849         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkDevice device,
1850         VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1851         uint32_t imageInfoCount, uint32_t bufferInfoCount, uint32_t bufferViewCount,
1852         uint32_t inlineUniformBlockCount, const uint32_t* pImageInfoEntryIndices,
1853         const uint32_t* pBufferInfoEntryIndices, const uint32_t* pBufferViewEntryIndices,
1854         const VkDescriptorImageInfo* pImageInfos, const VkDescriptorBufferInfo* pBufferInfos,
1855         const VkBufferView* pBufferViews, const uint8_t* pInlineUniformBlockData);
1856     void vkQueueSubmitAsync2GOOGLE(android::base::BumpPool* pool,
1857                                    VkSnapshotApiCallInfo* apiCallInfo, const uint8_t* apiCallPacket,
1858                                    size_t apiCallPacketSize, VkQueue queue, uint32_t submitCount,
1859                                    const VkSubmitInfo2* pSubmits, VkFence fence);
1860     void vkGetSemaphoreGOOGLE(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1861                               const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1862                               VkResult input_result, VkDevice device, VkSemaphore semaphore,
1863                               uint64_t syncId);
1864 #endif
1865 #ifdef VK_KHR_ray_tracing_pipeline
1866     void vkCmdTraceRaysKHR(android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1867                            const uint8_t* apiCallPacket, size_t apiCallPacketSize,
1868                            VkCommandBuffer commandBuffer,
1869                            const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable,
1870                            const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable,
1871                            const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable,
1872                            const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable,
1873                            uint32_t width, uint32_t height, uint32_t depth);
1874     void vkCreateRayTracingPipelinesKHR(
1875         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1876         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1877         VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache,
1878         uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos,
1879         const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
1880     void vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
1881         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1882         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkResult input_result,
1883         VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount,
1884         size_t dataSize, void* pData);
1885     void vkCmdTraceRaysIndirectKHR(
1886         android::base::BumpPool* pool, VkSnapshotApiCallInfo* apiCallInfo,
1887         const uint8_t* apiCallPacket, size_t apiCallPacketSize, VkCommandBuffer commandBuffer,
1888         const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable,
1889         const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable,
1890         const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable,
1891         const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable,
1892         VkDeviceAddress indirectDeviceAddress);
1893     void vkGetRayTracingShaderGroupStackSizeKHR(android::base::BumpPool* pool,
1894                                                 VkSnapshotApiCallInfo* apiCallInfo,
1895                                                 const uint8_t* apiCallPacket,
1896                                                 size_t apiCallPacketSize, VkDeviceSize input_result,
1897                                                 VkDevice device, VkPipeline pipeline,
1898                                                 uint32_t group, VkShaderGroupShaderKHR groupShader);
1899     void vkCmdSetRayTracingPipelineStackSizeKHR(android::base::BumpPool* pool,
1900                                                 VkSnapshotApiCallInfo* apiCallInfo,
1901                                                 const uint8_t* apiCallPacket,
1902                                                 size_t apiCallPacketSize,
1903                                                 VkCommandBuffer commandBuffer,
1904                                                 uint32_t pipelineStackSize);
1905 #endif
1906    private:
1907     class Impl;
1908     std::unique_ptr<Impl> mImpl;
1909 };
1910 
1911 }  // namespace vk
1912 }  // namespace gfxstream
1913