• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2024 Valve Corporation
3  * SPDX-License-Identifier: MIT
4  */
5 
6 #pragma once
7 
8 #include "libcl.h"
9 
10 typedef enum VkQueryType {
11     VK_QUERY_TYPE_OCCLUSION = 0,
12     VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,
13     VK_QUERY_TYPE_TIMESTAMP = 2,
14     VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR = 1000023000,
15     VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004,
16     VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR = 1000116000,
17     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000150000,
18     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150001,
19     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000,
20     VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL = 1000210000,
21     VK_QUERY_TYPE_VIDEO_ENCODE_FEEDBACK_KHR = 1000299000,
22     VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT = 1000328000,
23     VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT = 1000382000,
24     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR = 1000386000,
25     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR = 1000386001,
26     VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT = 1000396000,
27     VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT = 1000396001,
28     VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF
29 } VkQueryType;
30 
31 typedef enum VkQueryResultFlagBits {
32     VK_QUERY_RESULT_64_BIT = 0x00000001,
33     VK_QUERY_RESULT_WAIT_BIT = 0x00000002,
34     VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004,
35     VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008,
36     VK_QUERY_RESULT_WITH_STATUS_BIT_KHR = 0x00000010,
37     VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
38 } VkQueryResultFlagBits;
39 
40 typedef struct VkDrawIndexedIndirectCommand {
41    uint32_t indexCount;
42    uint32_t instanceCount;
43    uint32_t firstIndex;
44    int32_t vertexOffset;
45    uint32_t firstInstance;
46 } VkDrawIndexedIndirectCommand __attribute__((aligned(4)));
47 
48 typedef struct VkDrawIndirectCommand {
49    uint32_t vertexCount;
50    uint32_t instanceCount;
51    uint32_t firstVertex;
52    uint32_t firstInstance;
53 } VkDrawIndirectCommand __attribute__((aligned(4)));
54