blob: 44ec6975cd35ba12296ac98ed4259d5cce513b4e [file] [log] [blame] [edit]
/*
** Copyright 2015-2023 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
/*
** This header is generated from the Khronos Vulkan XML API Registry.
**
*/
#pragma once
#ifdef VK_GFXSTREAM_STRUCTURE_TYPE_EXT
#include "vulkan_gfxstream_structure_type.h"
#endif
#ifdef __cplusplus
extern "C" {
#endif
// VK_GOOGLE_gfxstream is a preprocessor guard. Do not pass it to API calls.
#define VK_GOOGLE_gfxstream 1
#define VK_GOOGLE_GFXSTREAM_SPEC_VERSION 0
#define VK_GOOGLE_GFXSTREAM_NUMBER 386
#define VK_GOOGLE_GFXSTREAM_EXTENSION_NAME "VK_GOOGLE_gfxstream"
typedef struct VkImportColorBufferGOOGLE {
VkStructureType sType;
void* pNext;
uint32_t colorBuffer;
} VkImportColorBufferGOOGLE;
typedef struct VkImportBufferGOOGLE {
VkStructureType sType;
void* pNext;
uint32_t buffer;
} VkImportBufferGOOGLE;
typedef struct VkCreateBlobGOOGLE {
VkStructureType sType;
void* pNext;
uint32_t blobMem;
uint32_t blobFlags;
uint64_t blobId;
} VkCreateBlobGOOGLE;
typedef VkResult(VKAPI_PTR* PFN_vkMapMemoryIntoAddressSpaceGOOGLE)(VkDevice device,
VkDeviceMemory memory,
uint64_t* pAddress);
typedef void(VKAPI_PTR* PFN_vkUpdateDescriptorSetWithTemplateSizedGOOGLE)(
VkDevice device, VkDescriptorSet descriptorSet,
VkDescriptorUpdateTemplate descriptorUpdateTemplate, uint32_t imageInfoCount,
uint32_t bufferInfoCount, uint32_t bufferViewCount, const uint32_t* pImageInfoEntryIndices,
const uint32_t* pBufferInfoEntryIndices, const uint32_t* pBufferViewEntryIndices,
const VkDescriptorImageInfo* pImageInfos, const VkDescriptorBufferInfo* pBufferInfos,
const VkBufferView* pBufferViews);
typedef void(VKAPI_PTR* PFN_vkBeginCommandBufferAsyncGOOGLE)(
VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo);
typedef void(VKAPI_PTR* PFN_vkEndCommandBufferAsyncGOOGLE)(VkCommandBuffer commandBuffer);
typedef void(VKAPI_PTR* PFN_vkResetCommandBufferAsyncGOOGLE)(VkCommandBuffer commandBuffer,
VkCommandBufferResetFlags flags);
typedef void(VKAPI_PTR* PFN_vkCommandBufferHostSyncGOOGLE)(VkCommandBuffer commandBuffer,
uint32_t needHostSync,
uint32_t sequenceNumber);
typedef VkResult(VKAPI_PTR* PFN_vkCreateImageWithRequirementsGOOGLE)(
VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator,
VkImage* pImage, VkMemoryRequirements* pMemoryRequirements);
typedef VkResult(VKAPI_PTR* PFN_vkCreateBufferWithRequirementsGOOGLE)(
VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator,
VkBuffer* pBuffer, VkMemoryRequirements* pMemoryRequirements);
typedef VkResult(VKAPI_PTR* PFN_vkGetMemoryHostAddressInfoGOOGLE)(VkDevice device,
VkDeviceMemory memory,
uint64_t* pAddress,
uint64_t* pSize,
uint64_t* pHostmemId);
typedef VkResult(VKAPI_PTR* PFN_vkFreeMemorySyncGOOGLE)(VkDevice device, VkDeviceMemory memory,
const VkAllocationCallbacks* pAllocator);
typedef void(VKAPI_PTR* PFN_vkQueueHostSyncGOOGLE)(VkQueue queue, uint32_t needHostSync,
uint32_t sequenceNumber);
typedef void(VKAPI_PTR* PFN_vkQueueSubmitAsyncGOOGLE)(VkQueue queue, uint32_t submitCount,
const VkSubmitInfo* pSubmits, VkFence fence);
typedef void(VKAPI_PTR* PFN_vkQueueWaitIdleAsyncGOOGLE)(VkQueue queue);
typedef void(VKAPI_PTR* PFN_vkQueueBindSparseAsyncGOOGLE)(VkQueue queue, uint32_t bindInfoCount,
const VkBindSparseInfo* pBindInfo,
VkFence fence);
typedef void(VKAPI_PTR* PFN_vkGetLinearImageLayoutGOOGLE)(VkDevice device, VkFormat format,
VkDeviceSize* pOffset,
VkDeviceSize* pRowPitchAlignment);
typedef void(VKAPI_PTR* PFN_vkGetLinearImageLayout2GOOGLE)(VkDevice device,
const VkImageCreateInfo* pCreateInfo,
VkDeviceSize* pOffset,
VkDeviceSize* pRowPitchAlignment);
typedef void(VKAPI_PTR* PFN_vkQueueFlushCommandsGOOGLE)(VkQueue queue,
VkCommandBuffer commandBuffer,
VkDeviceSize dataSize, const void* pData);
typedef void(VKAPI_PTR* PFN_vkQueueCommitDescriptorSetUpdatesGOOGLE)(
VkQueue queue, uint32_t descriptorPoolCount, const VkDescriptorPool* pDescriptorPools,
uint32_t descriptorSetCount, const VkDescriptorSetLayout* pSetLayouts,
const uint64_t* pDescriptorSetPoolIds, const uint32_t* pDescriptorSetWhichPool,
const uint32_t* pDescriptorSetPendingAllocation,
const uint32_t* pDescriptorWriteStartingIndices, uint32_t pendingDescriptorWriteCount,
const VkWriteDescriptorSet* pPendingDescriptorWrites);
typedef void(VKAPI_PTR* PFN_vkCollectDescriptorPoolIdsGOOGLE)(VkDevice device,
VkDescriptorPool descriptorPool,
uint32_t* pPoolIdCount,
uint64_t* pPoolIds);
typedef void(VKAPI_PTR* PFN_vkQueueSignalReleaseImageANDROIDAsyncGOOGLE)(
VkQueue queue, uint32_t waitSemaphoreCount, const VkSemaphore* pWaitSemaphores, VkImage image);
typedef void(VKAPI_PTR* PFN_vkQueueFlushCommandsFromAuxMemoryGOOGLE)(VkQueue queue,
VkCommandBuffer commandBuffer,
VkDeviceMemory deviceMemory,
VkDeviceSize dataOffset,
VkDeviceSize dataSize);
typedef VkResult(VKAPI_PTR* PFN_vkGetBlobGOOGLE)(VkDevice device, VkDeviceMemory memory);
typedef void(VKAPI_PTR* PFN_vkUpdateDescriptorSetWithTemplateSized2GOOGLE)(
VkDevice device, VkDescriptorSet descriptorSet,
VkDescriptorUpdateTemplate descriptorUpdateTemplate, uint32_t imageInfoCount,
uint32_t bufferInfoCount, uint32_t bufferViewCount, uint32_t inlineUniformBlockCount,
const uint32_t* pImageInfoEntryIndices, const uint32_t* pBufferInfoEntryIndices,
const uint32_t* pBufferViewEntryIndices, const VkDescriptorImageInfo* pImageInfos,
const VkDescriptorBufferInfo* pBufferInfos, const VkBufferView* pBufferViews,
const uint8_t* pInlineUniformBlockData);
typedef void(VKAPI_PTR* PFN_vkQueueSubmitAsync2GOOGLE)(VkQueue queue, uint32_t submitCount,
const VkSubmitInfo2* pSubmits,
VkFence fence);
#ifndef VK_NO_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkMapMemoryIntoAddressSpaceGOOGLE(VkDevice device,
VkDeviceMemory memory,
uint64_t* pAddress);
VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateSizedGOOGLE(
VkDevice device, VkDescriptorSet descriptorSet,
VkDescriptorUpdateTemplate descriptorUpdateTemplate, uint32_t imageInfoCount,
uint32_t bufferInfoCount, uint32_t bufferViewCount, const uint32_t* pImageInfoEntryIndices,
const uint32_t* pBufferInfoEntryIndices, const uint32_t* pBufferViewEntryIndices,
const VkDescriptorImageInfo* pImageInfos, const VkDescriptorBufferInfo* pBufferInfos,
const VkBufferView* pBufferViews);
VKAPI_ATTR void VKAPI_CALL vkBeginCommandBufferAsyncGOOGLE(
VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo);
VKAPI_ATTR void VKAPI_CALL vkEndCommandBufferAsyncGOOGLE(VkCommandBuffer commandBuffer);
VKAPI_ATTR void VKAPI_CALL vkResetCommandBufferAsyncGOOGLE(VkCommandBuffer commandBuffer,
VkCommandBufferResetFlags flags);
VKAPI_ATTR void VKAPI_CALL vkCommandBufferHostSyncGOOGLE(VkCommandBuffer commandBuffer,
uint32_t needHostSync,
uint32_t sequenceNumber);
VKAPI_ATTR VkResult VKAPI_CALL vkCreateImageWithRequirementsGOOGLE(
VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator,
VkImage* pImage, VkMemoryRequirements* pMemoryRequirements);
VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferWithRequirementsGOOGLE(
VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator,
VkBuffer* pBuffer, VkMemoryRequirements* pMemoryRequirements);
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryHostAddressInfoGOOGLE(VkDevice device,
VkDeviceMemory memory,
uint64_t* pAddress, uint64_t* pSize,
uint64_t* pHostmemId);
VKAPI_ATTR VkResult VKAPI_CALL vkFreeMemorySyncGOOGLE(VkDevice device, VkDeviceMemory memory,
const VkAllocationCallbacks* pAllocator);
VKAPI_ATTR void VKAPI_CALL vkQueueHostSyncGOOGLE(VkQueue queue, uint32_t needHostSync,
uint32_t sequenceNumber);
VKAPI_ATTR void VKAPI_CALL vkQueueSubmitAsyncGOOGLE(VkQueue queue, uint32_t submitCount,
const VkSubmitInfo* pSubmits, VkFence fence);
VKAPI_ATTR void VKAPI_CALL vkQueueWaitIdleAsyncGOOGLE(VkQueue queue);
VKAPI_ATTR void VKAPI_CALL vkQueueBindSparseAsyncGOOGLE(VkQueue queue, uint32_t bindInfoCount,
const VkBindSparseInfo* pBindInfo,
VkFence fence);
VKAPI_ATTR void VKAPI_CALL vkGetLinearImageLayoutGOOGLE(VkDevice device, VkFormat format,
VkDeviceSize* pOffset,
VkDeviceSize* pRowPitchAlignment);
VKAPI_ATTR void VKAPI_CALL vkGetLinearImageLayout2GOOGLE(VkDevice device,
const VkImageCreateInfo* pCreateInfo,
VkDeviceSize* pOffset,
VkDeviceSize* pRowPitchAlignment);
VKAPI_ATTR void VKAPI_CALL vkQueueFlushCommandsGOOGLE(VkQueue queue, VkCommandBuffer commandBuffer,
VkDeviceSize dataSize, const void* pData);
VKAPI_ATTR void VKAPI_CALL vkQueueCommitDescriptorSetUpdatesGOOGLE(
VkQueue queue, uint32_t descriptorPoolCount, const VkDescriptorPool* pDescriptorPools,
uint32_t descriptorSetCount, const VkDescriptorSetLayout* pSetLayouts,
const uint64_t* pDescriptorSetPoolIds, const uint32_t* pDescriptorSetWhichPool,
const uint32_t* pDescriptorSetPendingAllocation,
const uint32_t* pDescriptorWriteStartingIndices, uint32_t pendingDescriptorWriteCount,
const VkWriteDescriptorSet* pPendingDescriptorWrites);
VKAPI_ATTR void VKAPI_CALL vkCollectDescriptorPoolIdsGOOGLE(VkDevice device,
VkDescriptorPool descriptorPool,
uint32_t* pPoolIdCount,
uint64_t* pPoolIds);
VKAPI_ATTR void VKAPI_CALL vkQueueSignalReleaseImageANDROIDAsyncGOOGLE(
VkQueue queue, uint32_t waitSemaphoreCount, const VkSemaphore* pWaitSemaphores, VkImage image);
VKAPI_ATTR void VKAPI_CALL vkQueueFlushCommandsFromAuxMemoryGOOGLE(VkQueue queue,
VkCommandBuffer commandBuffer,
VkDeviceMemory deviceMemory,
VkDeviceSize dataOffset,
VkDeviceSize dataSize);
VKAPI_ATTR VkResult VKAPI_CALL vkGetBlobGOOGLE(VkDevice device, VkDeviceMemory memory);
VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateSized2GOOGLE(
VkDevice device, VkDescriptorSet descriptorSet,
VkDescriptorUpdateTemplate descriptorUpdateTemplate, uint32_t imageInfoCount,
uint32_t bufferInfoCount, uint32_t bufferViewCount, uint32_t inlineUniformBlockCount,
const uint32_t* pImageInfoEntryIndices, const uint32_t* pBufferInfoEntryIndices,
const uint32_t* pBufferViewEntryIndices, const VkDescriptorImageInfo* pImageInfos,
const VkDescriptorBufferInfo* pBufferInfos, const VkBufferView* pBufferViews,
const uint8_t* pInlineUniformBlockData);
VKAPI_ATTR void VKAPI_CALL vkQueueSubmitAsync2GOOGLE(VkQueue queue, uint32_t submitCount,
const VkSubmitInfo2* pSubmits, VkFence fence);
#endif
#ifdef __cplusplus
}
#endif