1 /* THIS FILE IS GENERATED. DO NOT EDIT. */ 2 3 /* 4 * Vulkan 5 * 6 * Copyright (c) 2015-2016 The Khronos Group Inc. 7 * Copyright (c) 2015-2016 Valve Corporation. 8 * Copyright (c) 2015-2016 LunarG, Inc. 9 * Copyright (c) 2015-2016 Google Inc. 10 * 11 * Licensed under the Apache License, Version 2.0 (the "License"); 12 * you may not use this file except in compliance with the License. 13 * You may obtain a copy of the License at 14 * 15 * http://www.apache.org/licenses/LICENSE-2.0 16 * 17 * Unless required by applicable law or agreed to in writing, software 18 * distributed under the License is distributed on an "AS IS" BASIS, 19 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 20 * See the License for the specific language governing permissions and 21 * limitations under the License. 22 * 23 * Author: Courtney Goeltzenleuchter <courtney (at) LunarG.com> 24 * Author: Tobin Ehlis <tobin (at) lunarg.com> 25 */ 26 27 #ifdef __cplusplus 28 extern "C" { 29 #endif 30 31 //#includes, #defines, globals and such... 32 #include <stdio.h> 33 #include <stdlib.h> 34 #include <vulkan/vulkan.h> 35 36 // Function Prototypes 37 size_t get_struct_chain_size(const void* pStruct); 38 size_t get_dynamic_struct_size(const void* pStruct); 39 size_t vk_size_vkallocationcallbacks(const VkAllocationCallbacks* pStruct); 40 #ifdef VK_USE_PLATFORM_ANDROID_KHR 41 size_t vk_size_vkandroidsurfacecreateinfokhr(const VkAndroidSurfaceCreateInfoKHR* pStruct); 42 #endif //VK_USE_PLATFORM_ANDROID_KHR 43 size_t vk_size_vkapplicationinfo(const VkApplicationInfo* pStruct); 44 size_t vk_size_vkattachmentdescription(const VkAttachmentDescription* pStruct); 45 size_t vk_size_vkattachmentreference(const VkAttachmentReference* pStruct); 46 size_t vk_size_vkbindsparseinfo(const VkBindSparseInfo* pStruct); 47 size_t vk_size_vkbuffercopy(const VkBufferCopy* pStruct); 48 size_t vk_size_vkbuffercreateinfo(const VkBufferCreateInfo* pStruct); 49 size_t vk_size_vkbufferimagecopy(const VkBufferImageCopy* pStruct); 50 size_t vk_size_vkbuffermemorybarrier(const VkBufferMemoryBarrier* pStruct); 51 size_t vk_size_vkbufferviewcreateinfo(const VkBufferViewCreateInfo* pStruct); 52 size_t vk_size_vkclearattachment(const VkClearAttachment* pStruct); 53 size_t vk_size_vkclearcolorvalue(const VkClearColorValue* pStruct); 54 size_t vk_size_vkcleardepthstencilvalue(const VkClearDepthStencilValue* pStruct); 55 size_t vk_size_vkclearrect(const VkClearRect* pStruct); 56 size_t vk_size_vkclearvalue(const VkClearValue* pStruct); 57 size_t vk_size_vkcommandbufferallocateinfo(const VkCommandBufferAllocateInfo* pStruct); 58 size_t vk_size_vkcommandbufferbegininfo(const VkCommandBufferBeginInfo* pStruct); 59 size_t vk_size_vkcommandbufferinheritanceinfo(const VkCommandBufferInheritanceInfo* pStruct); 60 size_t vk_size_vkcommandpoolcreateinfo(const VkCommandPoolCreateInfo* pStruct); 61 size_t vk_size_vkcomponentmapping(const VkComponentMapping* pStruct); 62 size_t vk_size_vkcomputepipelinecreateinfo(const VkComputePipelineCreateInfo* pStruct); 63 size_t vk_size_vkcopydescriptorset(const VkCopyDescriptorSet* pStruct); 64 size_t vk_size_vkdebugmarkermarkerinfoext(const VkDebugMarkerMarkerInfoEXT* pStruct); 65 size_t vk_size_vkdebugmarkerobjectnameinfoext(const VkDebugMarkerObjectNameInfoEXT* pStruct); 66 size_t vk_size_vkdebugmarkerobjecttaginfoext(const VkDebugMarkerObjectTagInfoEXT* pStruct); 67 size_t vk_size_vkdebugreportcallbackcreateinfoext(const VkDebugReportCallbackCreateInfoEXT* pStruct); 68 size_t vk_size_vkdedicatedallocationbuffercreateinfonv(const VkDedicatedAllocationBufferCreateInfoNV* pStruct); 69 size_t vk_size_vkdedicatedallocationimagecreateinfonv(const VkDedicatedAllocationImageCreateInfoNV* pStruct); 70 size_t vk_size_vkdedicatedallocationmemoryallocateinfonv(const VkDedicatedAllocationMemoryAllocateInfoNV* pStruct); 71 size_t vk_size_vkdescriptorbufferinfo(const VkDescriptorBufferInfo* pStruct); 72 size_t vk_size_vkdescriptorimageinfo(const VkDescriptorImageInfo* pStruct); 73 size_t vk_size_vkdescriptorpoolcreateinfo(const VkDescriptorPoolCreateInfo* pStruct); 74 size_t vk_size_vkdescriptorpoolsize(const VkDescriptorPoolSize* pStruct); 75 size_t vk_size_vkdescriptorsetallocateinfo(const VkDescriptorSetAllocateInfo* pStruct); 76 size_t vk_size_vkdescriptorsetlayoutbinding(const VkDescriptorSetLayoutBinding* pStruct); 77 size_t vk_size_vkdescriptorsetlayoutcreateinfo(const VkDescriptorSetLayoutCreateInfo* pStruct); 78 size_t vk_size_vkdevicecreateinfo(const VkDeviceCreateInfo* pStruct); 79 size_t vk_size_vkdevicequeuecreateinfo(const VkDeviceQueueCreateInfo* pStruct); 80 size_t vk_size_vkdispatchindirectcommand(const VkDispatchIndirectCommand* pStruct); 81 size_t vk_size_vkdisplaymodecreateinfokhr(const VkDisplayModeCreateInfoKHR* pStruct); 82 size_t vk_size_vkdisplaymodeparameterskhr(const VkDisplayModeParametersKHR* pStruct); 83 size_t vk_size_vkdisplaymodepropertieskhr(const VkDisplayModePropertiesKHR* pStruct); 84 size_t vk_size_vkdisplayplanecapabilitieskhr(const VkDisplayPlaneCapabilitiesKHR* pStruct); 85 size_t vk_size_vkdisplayplanepropertieskhr(const VkDisplayPlanePropertiesKHR* pStruct); 86 size_t vk_size_vkdisplaypresentinfokhr(const VkDisplayPresentInfoKHR* pStruct); 87 size_t vk_size_vkdisplaypropertieskhr(const VkDisplayPropertiesKHR* pStruct); 88 size_t vk_size_vkdisplaysurfacecreateinfokhr(const VkDisplaySurfaceCreateInfoKHR* pStruct); 89 size_t vk_size_vkdrawindexedindirectcommand(const VkDrawIndexedIndirectCommand* pStruct); 90 size_t vk_size_vkdrawindirectcommand(const VkDrawIndirectCommand* pStruct); 91 size_t vk_size_vkeventcreateinfo(const VkEventCreateInfo* pStruct); 92 size_t vk_size_vkexportmemoryallocateinfonv(const VkExportMemoryAllocateInfoNV* pStruct); 93 #ifdef VK_USE_PLATFORM_WIN32_KHR 94 size_t vk_size_vkexportmemorywin32handleinfonv(const VkExportMemoryWin32HandleInfoNV* pStruct); 95 #endif //VK_USE_PLATFORM_WIN32_KHR 96 size_t vk_size_vkextensionproperties(const VkExtensionProperties* pStruct); 97 size_t vk_size_vkextent2d(const VkExtent2D* pStruct); 98 size_t vk_size_vkextent3d(const VkExtent3D* pStruct); 99 size_t vk_size_vkexternalimageformatpropertiesnv(const VkExternalImageFormatPropertiesNV* pStruct); 100 size_t vk_size_vkexternalmemoryimagecreateinfonv(const VkExternalMemoryImageCreateInfoNV* pStruct); 101 size_t vk_size_vkfencecreateinfo(const VkFenceCreateInfo* pStruct); 102 size_t vk_size_vkformatproperties(const VkFormatProperties* pStruct); 103 size_t vk_size_vkframebuffercreateinfo(const VkFramebufferCreateInfo* pStruct); 104 size_t vk_size_vkgraphicspipelinecreateinfo(const VkGraphicsPipelineCreateInfo* pStruct); 105 size_t vk_size_vkimageblit(const VkImageBlit* pStruct); 106 size_t vk_size_vkimagecopy(const VkImageCopy* pStruct); 107 size_t vk_size_vkimagecreateinfo(const VkImageCreateInfo* pStruct); 108 size_t vk_size_vkimageformatproperties(const VkImageFormatProperties* pStruct); 109 size_t vk_size_vkimagememorybarrier(const VkImageMemoryBarrier* pStruct); 110 size_t vk_size_vkimageresolve(const VkImageResolve* pStruct); 111 size_t vk_size_vkimagesubresource(const VkImageSubresource* pStruct); 112 size_t vk_size_vkimagesubresourcelayers(const VkImageSubresourceLayers* pStruct); 113 size_t vk_size_vkimagesubresourcerange(const VkImageSubresourceRange* pStruct); 114 size_t vk_size_vkimageviewcreateinfo(const VkImageViewCreateInfo* pStruct); 115 #ifdef VK_USE_PLATFORM_WIN32_KHR 116 size_t vk_size_vkimportmemorywin32handleinfonv(const VkImportMemoryWin32HandleInfoNV* pStruct); 117 #endif //VK_USE_PLATFORM_WIN32_KHR 118 size_t vk_size_vkinstancecreateinfo(const VkInstanceCreateInfo* pStruct); 119 size_t vk_size_vklayerproperties(const VkLayerProperties* pStruct); 120 size_t vk_size_vkmappedmemoryrange(const VkMappedMemoryRange* pStruct); 121 size_t vk_size_vkmemoryallocateinfo(const VkMemoryAllocateInfo* pStruct); 122 size_t vk_size_vkmemorybarrier(const VkMemoryBarrier* pStruct); 123 size_t vk_size_vkmemoryheap(const VkMemoryHeap* pStruct); 124 size_t vk_size_vkmemoryrequirements(const VkMemoryRequirements* pStruct); 125 size_t vk_size_vkmemorytype(const VkMemoryType* pStruct); 126 #ifdef VK_USE_PLATFORM_MIR_KHR 127 size_t vk_size_vkmirsurfacecreateinfokhr(const VkMirSurfaceCreateInfoKHR* pStruct); 128 #endif //VK_USE_PLATFORM_MIR_KHR 129 size_t vk_size_vkoffset2d(const VkOffset2D* pStruct); 130 size_t vk_size_vkoffset3d(const VkOffset3D* pStruct); 131 size_t vk_size_vkphysicaldevicefeatures(const VkPhysicalDeviceFeatures* pStruct); 132 size_t vk_size_vkphysicaldevicelimits(const VkPhysicalDeviceLimits* pStruct); 133 size_t vk_size_vkphysicaldevicememoryproperties(const VkPhysicalDeviceMemoryProperties* pStruct); 134 size_t vk_size_vkphysicaldeviceproperties(const VkPhysicalDeviceProperties* pStruct); 135 size_t vk_size_vkphysicaldevicesparseproperties(const VkPhysicalDeviceSparseProperties* pStruct); 136 size_t vk_size_vkpipelinecachecreateinfo(const VkPipelineCacheCreateInfo* pStruct); 137 size_t vk_size_vkpipelinecolorblendattachmentstate(const VkPipelineColorBlendAttachmentState* pStruct); 138 size_t vk_size_vkpipelinecolorblendstatecreateinfo(const VkPipelineColorBlendStateCreateInfo* pStruct); 139 size_t vk_size_vkpipelinedepthstencilstatecreateinfo(const VkPipelineDepthStencilStateCreateInfo* pStruct); 140 size_t vk_size_vkpipelinedynamicstatecreateinfo(const VkPipelineDynamicStateCreateInfo* pStruct); 141 size_t vk_size_vkpipelineinputassemblystatecreateinfo(const VkPipelineInputAssemblyStateCreateInfo* pStruct); 142 size_t vk_size_vkpipelinelayoutcreateinfo(const VkPipelineLayoutCreateInfo* pStruct); 143 size_t vk_size_vkpipelinemultisamplestatecreateinfo(const VkPipelineMultisampleStateCreateInfo* pStruct); 144 size_t vk_size_vkpipelinerasterizationstatecreateinfo(const VkPipelineRasterizationStateCreateInfo* pStruct); 145 size_t vk_size_vkpipelinerasterizationstaterasterizationorderamd(const VkPipelineRasterizationStateRasterizationOrderAMD* pStruct); 146 size_t vk_size_vkpipelineshaderstagecreateinfo(const VkPipelineShaderStageCreateInfo* pStruct); 147 size_t vk_size_vkpipelinetessellationstatecreateinfo(const VkPipelineTessellationStateCreateInfo* pStruct); 148 size_t vk_size_vkpipelinevertexinputstatecreateinfo(const VkPipelineVertexInputStateCreateInfo* pStruct); 149 size_t vk_size_vkpipelineviewportstatecreateinfo(const VkPipelineViewportStateCreateInfo* pStruct); 150 size_t vk_size_vkpresentinfokhr(const VkPresentInfoKHR* pStruct); 151 size_t vk_size_vkpushconstantrange(const VkPushConstantRange* pStruct); 152 size_t vk_size_vkquerypoolcreateinfo(const VkQueryPoolCreateInfo* pStruct); 153 size_t vk_size_vkqueuefamilyproperties(const VkQueueFamilyProperties* pStruct); 154 size_t vk_size_vkrect2d(const VkRect2D* pStruct); 155 size_t vk_size_vkrenderpassbegininfo(const VkRenderPassBeginInfo* pStruct); 156 size_t vk_size_vkrenderpasscreateinfo(const VkRenderPassCreateInfo* pStruct); 157 size_t vk_size_vksamplercreateinfo(const VkSamplerCreateInfo* pStruct); 158 size_t vk_size_vksemaphorecreateinfo(const VkSemaphoreCreateInfo* pStruct); 159 size_t vk_size_vkshadermodulecreateinfo(const VkShaderModuleCreateInfo* pStruct); 160 size_t vk_size_vksparsebuffermemorybindinfo(const VkSparseBufferMemoryBindInfo* pStruct); 161 size_t vk_size_vksparseimageformatproperties(const VkSparseImageFormatProperties* pStruct); 162 size_t vk_size_vksparseimagememorybind(const VkSparseImageMemoryBind* pStruct); 163 size_t vk_size_vksparseimagememorybindinfo(const VkSparseImageMemoryBindInfo* pStruct); 164 size_t vk_size_vksparseimagememoryrequirements(const VkSparseImageMemoryRequirements* pStruct); 165 size_t vk_size_vksparseimageopaquememorybindinfo(const VkSparseImageOpaqueMemoryBindInfo* pStruct); 166 size_t vk_size_vksparsememorybind(const VkSparseMemoryBind* pStruct); 167 size_t vk_size_vkspecializationinfo(const VkSpecializationInfo* pStruct); 168 size_t vk_size_vkspecializationmapentry(const VkSpecializationMapEntry* pStruct); 169 size_t vk_size_vkstencilopstate(const VkStencilOpState* pStruct); 170 size_t vk_size_vksubmitinfo(const VkSubmitInfo* pStruct); 171 size_t vk_size_vksubpassdependency(const VkSubpassDependency* pStruct); 172 size_t vk_size_vksubpassdescription(const VkSubpassDescription* pStruct); 173 size_t vk_size_vksubresourcelayout(const VkSubresourceLayout* pStruct); 174 size_t vk_size_vksurfacecapabilitieskhr(const VkSurfaceCapabilitiesKHR* pStruct); 175 size_t vk_size_vksurfaceformatkhr(const VkSurfaceFormatKHR* pStruct); 176 size_t vk_size_vkswapchaincreateinfokhr(const VkSwapchainCreateInfoKHR* pStruct); 177 size_t vk_size_vkvalidationflagsext(const VkValidationFlagsEXT* pStruct); 178 size_t vk_size_vkvertexinputattributedescription(const VkVertexInputAttributeDescription* pStruct); 179 size_t vk_size_vkvertexinputbindingdescription(const VkVertexInputBindingDescription* pStruct); 180 size_t vk_size_vkviewport(const VkViewport* pStruct); 181 #ifdef VK_USE_PLATFORM_WAYLAND_KHR 182 size_t vk_size_vkwaylandsurfacecreateinfokhr(const VkWaylandSurfaceCreateInfoKHR* pStruct); 183 #endif //VK_USE_PLATFORM_WAYLAND_KHR 184 #ifdef VK_USE_PLATFORM_WIN32_KHR 185 size_t vk_size_vkwin32keyedmutexacquirereleaseinfonv(const VkWin32KeyedMutexAcquireReleaseInfoNV* pStruct); 186 #endif //VK_USE_PLATFORM_WIN32_KHR 187 #ifdef VK_USE_PLATFORM_WIN32_KHR 188 size_t vk_size_vkwin32surfacecreateinfokhr(const VkWin32SurfaceCreateInfoKHR* pStruct); 189 #endif //VK_USE_PLATFORM_WIN32_KHR 190 size_t vk_size_vkwritedescriptorset(const VkWriteDescriptorSet* pStruct); 191 #ifdef VK_USE_PLATFORM_XCB_KHR 192 size_t vk_size_vkxcbsurfacecreateinfokhr(const VkXcbSurfaceCreateInfoKHR* pStruct); 193 #endif //VK_USE_PLATFORM_XCB_KHR 194 #ifdef VK_USE_PLATFORM_XLIB_KHR 195 size_t vk_size_vkxlibsurfacecreateinfokhr(const VkXlibSurfaceCreateInfoKHR* pStruct); 196 #endif //VK_USE_PLATFORM_XLIB_KHR 197 198 #ifdef __cplusplus 199 } 200 #endif