Specifies the type of query heap to create.
typedef enum D3D12_QUERY_HEAP_TYPE
{
D3D12_QUERY_HEAP_TYPE_OCCLUSION = 0,
D3D12_QUERY_HEAP_TYPE_TIMESTAMP = 1,
D3D12_QUERY_HEAP_TYPE_PIPELINE_STATISTICS = 2,
D3D12_QUERY_HEAP_TYPE_SO_STATISTICS = 3,
D3D12_QUERY_HEAP_TYPE_COPY_QUEUE_TIMESTAMP = 5,
D3D12XBOX_QUERY_HEAP_TYPE_DMA_TIMESTAMP = 7,
D3D12XBOX_QUERY_HEAP_TYPE_OCCLUSION_NO_SYNC = 9,
D3D12XBOX_QUERY_HEAP_TYPE_TIMESTAMP_NO_SYNC = 10,
D3D12XBOX_QUERY_HEAP_TYPE_DMA_TIMESTAMP_NO_SYNC = 11,
D3D12_QUERY_HEAP_TYPE_MAX_VALID = 13
} D3D12_QUERY_HEAP_TYPE;
| Constant | Description |
|---|---|
| D3D12_QUERY_HEAP_TYPE_OCCLUSION | This returns a binary 0/1 result: 0 indicates that no samples passed depth and stencil testing, 1 indicates that at least one sample passed depth and stencil testing. This enables occlusion queries to not interfere with any GPU performance optimization associated with depth/stencil testing. |
| D3D12_QUERY_HEAP_TYPE_TIMESTAMP | Indicates that the heap is for high-performance timing data. |
| D3D12_QUERY_HEAP_TYPE_PIPELINE_STATISTICS | Indicates the heap is to contain pipeline data. Refer to D3D12_QUERY_DATA_PIPELINE_STATISTICS. |
| D3D12_QUERY_HEAP_TYPE_SO_STATISTICS | Indicates the heap is to contain stream output data. Refer to D3D12_QUERY_DATA_SO_STATISTICS. |
| D3D12_QUERY_HEAP_TYPE_COPY_QUEUE_TIMESTAMP | Indicates the heap is to contain copy queue timestamp data. |
| D3D12XBOX_QUERY_HEAP_TYPE_DMA_TIMESTAMP | Indicates the heap is for high-performance timing data on the Xbox One specific DMA functionality. |
| D3D12XBOX_QUERY_HEAP_TYPE_OCCLUSION_NO_SYNC | Utilizes D3D12_QUERY_HEAP_TYPE_OCCLUSION queries, but performs no synchronization between query end and ResolveQueryData operations. It is the responsibility of the user to ensure queries have completed before resolving them. |
| D3D12XBOX_QUERY_HEAP_TYPE_TIMESTAMP_NO_SYNC | Utilizes D3D12_QUERY_HEAP_TYPE_TIMESTAMP queries, but performs no synchronization between query end and ResolveQueryData operations. It is the responsibility of the user to ensure queries have completed before resolving them. |
| D3D12XBOX_QUERY_HEAP_TYPE_DMA_TIMESTAMP_NO_SYNC | Utilizes D3D12XBOX_QUERY_HEAP_TYPE_DMA_TIMESTAMP queries, but performs no synchronization between query end and ResolveQueryData operations. It is the responsibility of the user to ensure queries have completed before resolving them. |
| D3D12_QUERY_HEAP_TYPE_MAX_VALID | A sentinal value that marks the exclusive upper-bound of valid values this enumeration represents. |
Header: Declared in d3d12_x.h.