Initial commit (should probably have done this earlier).
This commit is contained in:
112
include/vk_capture.h
Normal file
112
include/vk_capture.h
Normal file
@@ -0,0 +1,112 @@
|
||||
|
||||
#if !defined(VK_CAPTURE_H_INCLUDED)
|
||||
#define VK_CAPTURE_H_INCLUDED 1
|
||||
|
||||
#include <vulkan/vulkan.h>
|
||||
#include "vk_function_ids.h"
|
||||
|
||||
#if defined(__cplusplus)
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
VK_DEFINE_HANDLE(VkRecordListMWN);
|
||||
|
||||
static const VkStructureType VK_STRUCTURE_TYPE_RECORD_LIST_ALLOCATE_INFO_MWN = (VkStructureType) 2000144777; // pretty random, but should be fine I guess
|
||||
static const VkStructureType VK_STRUCTURE_TYPE_RECORD_INFO_MWN = (VkStructureType) 2000144778;
|
||||
|
||||
typedef enum VkRecordListAllocateFlagBitsMWN {
|
||||
VK_RECORD_LIST_ALLOCATE_FLAG_BITS_NONE_MWN = 0,
|
||||
VK_RECORD_LIST_ALLOCATE_FLAG_BITS_MAX_ENUM_MWN = 0x7FFFFFFF
|
||||
} VkRecordListAllocateFlagBitsMWN;
|
||||
typedef VkFlags VkRecordListAllocateFlagsMWN;
|
||||
|
||||
typedef enum VkRecordFlagBitsMWN {
|
||||
VK_RECORD_FLAG_BITS_NONE_MWN = 0,
|
||||
VK_RECORD_FLAG_BITS_MAX_ENUM_MWN = 0x7FFFFFFF
|
||||
} VkRecordFlagBitsMWN;
|
||||
typedef VkFlags VkRecordFlags;
|
||||
|
||||
typedef struct VkRecordListAllocateInfoMWN
|
||||
{
|
||||
VkStructureType sType;
|
||||
void* pNext;
|
||||
VkRecordListAllocateFlagsMWN flags;
|
||||
} VkRecordListAllocateInfoMWN;
|
||||
|
||||
typedef struct VkRecordInfoMWN
|
||||
{
|
||||
VkStructureType sType;
|
||||
void* pNext;
|
||||
VkRecordFlags flags;
|
||||
VkRecordListMWN recordList;
|
||||
} VkRecordInfoMWN;
|
||||
|
||||
typedef enum VkVariantTypeMWN {
|
||||
VK_VARIANT_TYPE_UNKNOWN_MWN = 0,
|
||||
VK_VARIANT_TYPE_NONE_MWN = 1,
|
||||
VK_VARIANT_TYPE_BOOL_MWN = 2,
|
||||
VK_VARIANT_TYPE_UINT8_MWN = 3,
|
||||
VK_VARIANT_TYPE_INT8_MWN = 4,
|
||||
VK_VARIANT_TYPE_UINT16_MWN = 5,
|
||||
VK_VARIANT_TYPE_INT16_MWN = 6,
|
||||
VK_VARIANT_TYPE_UINT32_MWN = 7,
|
||||
VK_VARIANT_TYPE_INT32_MWN = 8,
|
||||
VK_VARIANT_TYPE_UINT64_MWN = 9,
|
||||
VK_VARIANT_TYPE_INT64_MWN = 10,
|
||||
VK_VARIANT_TYPE_FLOAT_MWN = 11,
|
||||
VK_VARIANT_TYPE_DOUBLE_MWN = 12,
|
||||
VK_VARIANT_TYPE_STRING_MWN = 13,
|
||||
VK_VARIANT_TYPE_VOID_POINTER_MWN = 14,
|
||||
VK_VARIANT_TYPE_POINTER_MWN = 15,
|
||||
VK_VARIANT_TYPE_ARRAY_MWN = 16,
|
||||
VK_VARIANT_TYPE_IN_STRUCTURE_MWN = 17,
|
||||
VK_VARIANT_TYPE_OUT_STRUCTURE_MWN = 18,
|
||||
VK_VARIANT_TYPE_OBJECT_MWN = 19
|
||||
} VkVariantTypeMWN;
|
||||
|
||||
typedef struct VkVariantObjectValueMWN {
|
||||
void* value;
|
||||
VkObjectType type;
|
||||
} VkVariantObjectValueMWN;
|
||||
|
||||
typedef struct VkVariantArrayValueMWN {
|
||||
size_t numElements;
|
||||
struct VkVariantMWN* elements;
|
||||
} VkVariantArrayValueMWN;
|
||||
|
||||
typedef struct VkVariantMWN {
|
||||
VkVariantTypeMWN type;
|
||||
union
|
||||
{
|
||||
uint64_t uintValue;
|
||||
int64_t intValue;
|
||||
float floatValue;
|
||||
double doubleValue;
|
||||
const void* voidPointerValue;
|
||||
VkVariantMWN* pointerValue;
|
||||
VkVariantArrayValueMWN arrayValue;
|
||||
VkBaseInStructure* inStructureValue;
|
||||
VkBaseOutStructure* outStructureValue;
|
||||
VkVariantObjectValueMWN objectValue;
|
||||
};
|
||||
} VkVariantMWN;
|
||||
|
||||
typedef struct VkRecordListItemMWN
|
||||
{
|
||||
VkFunctionMWN function;
|
||||
VkVariantMWN returnValue;
|
||||
uint32_t numParameters;
|
||||
VkVariantMWN* pParameterValues;
|
||||
} VkRecordListItemMWN;
|
||||
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkAllocateRecordListMWN)(VkDevice device, const VkRecordListAllocateInfoMWN* pCreateInfo, VkRecordListMWN* pRecordList);
|
||||
typedef void (VKAPI_PTR *PFN_vkFreeRecordListMWN)(VkDevice device, VkRecordListMWN recordList);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkBeginRecordingMWN)(VkDevice device, const VkRecordInfoMWN* pRecordInfo);
|
||||
typedef void (VKAPI_PTR *PFN_vkEndRecordingMWN)(VkDevice device);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkGetRecordListItemsMWN)(VkDevice device, VkRecordListMWN recordList, uint32_t* pItemCount, VkRecordListItemMWN** pItems);
|
||||
|
||||
#if defined(__cplusplus)
|
||||
} // extern "C"
|
||||
#endif
|
||||
|
||||
#endif //VK_CAPTURE_H_INCLUDED
|
||||
Reference in New Issue
Block a user