> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ID3D12QueryHeap

> Gère un tas de requêtes. Un tas de requêtes contient un tableau de requêtes, référencées par des index.

Gère un tas de requêtes. Un tas de requêtes contient un tableau de requêtes, référencées par des index.

## Remarques

Pour plus d'informations, consultez [Requêtes](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/queries).

#### Exemples

L'exemple [D3D12PredicationQueries](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/working-samples) utilise **ID3D12QueryHeap** comme suit :

Créez un tas de requêtes et une mémoire tampon de résultats de requête.

```cpp theme={null}
// Pipeline objects.
D3D12_VIEWPORT m_viewport;
D3D12_RECT m_scissorRect;
ComPtr<IDXGISwapChain3> m_swapChain;
ComPtr<ID3D12Device> m_device;
ComPtr<ID3D12Resource> m_renderTargets[FrameCount];
ComPtr<ID3D12CommandAllocator> m_commandAllocators[FrameCount];
ComPtr<ID3D12CommandQueue> m_commandQueue;
ComPtr<ID3D12RootSignature> m_rootSignature;
ComPtr<ID3D12DescriptorHeap> m_rtvHeap;
ComPtr<ID3D12DescriptorHeap> m_cbvHeap;
ComPtr<ID3D12DescriptorHeap> m_dsvHeap;
ComPtr<ID3D12QueryHeap> m_queryHeap;
UINT m_rtvDescriptorSize;
UINT m_cbvSrvDescriptorSize;
UINT m_frameIndex;

// Synchronization objects.
ComPtr<ID3D12Fence> m_fence;
UINT64 m_fenceValues[FrameCount];
HANDLE m_fenceEvent;

// Asset objects.
ComPtr<ID3D12PipelineState> m_pipelineState;
ComPtr<ID3D12PipelineState> m_queryState;
ComPtr<ID3D12GraphicsCommandList> m_commandList;
ComPtr<ID3D12Resource> m_vertexBuffer;
ComPtr<ID3D12Resource> m_constantBuffer;
ComPtr<ID3D12Resource> m_depthStencil;
ComPtr<ID3D12Resource> m_queryResult;
D3D12_VERTEX_BUFFER_VIEW m_vertexBufferView;

```

```cpp theme={null}
// Describe and create a heap for occlusion queries.
D3D12_QUERY_HEAP_DESC queryHeapDesc = {};
queryHeapDesc.Count = 1;
queryHeapDesc.Type = D3D12_QUERY_HEAP_TYPE_OCCLUSION;
ThrowIfFailed(m_device->CreateQueryHeap(&queryHeapDesc, IID_PPV_ARGS(&m_queryHeap)));

```

Consultez l'[exemple de code dans la référence D3D12](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/notes-on-example-code).

<div class="code" />

## Configuration requise

**En-tête :** d3d12\_xs.h ou d3d12\_x.h\
**Bibliothèque :** d3d12\_xs.lib ou d3d12\_x.lib\
**Plateformes prises en charge :** consoles XBOX Series et famille XBOX One

## Voir aussi

[Interfaces principales](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/direct3d-12-interfaces)

[ID3D12Pageable](/fr-CA/reference/graphics/d3d12/interfaces/id3d12pageable/id3d12pageable_public)


## Related topics

- [EndQuery](/fr-CA/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist/methods/id3d12graphicscommandlist_endquery_public.md)
- [BeginQuery](/fr-CA/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist/methods/id3d12graphicscommandlist_beginquery_public.md)
- [D3D12_QUERY_HEAP_DESC](/fr-CA/reference/graphics/d3d12/structs/d3d12_query_heap_desc_public.md)
- [D3D12_QUERY_DATA_PIPELINE_STATISTICS](/fr-CA/reference/graphics/d3d12/structs/d3d12_query_data_pipeline_statistics_public.md)
- [D3D12_QUERY_DATA_SO_STATISTICS](/fr-CA/reference/graphics/d3d12/structs/d3d12_query_data_so_statistics_public.md)
