Syntaxe
typedef enum D3D12XBOX_SYNC_FLAGS : UINT
{
D3D12XBOX_SYNC_FLAG_NONE = 0x00000000,
D3D12XBOX_SYNC_FLAG_ICACHE_INVALIDATE = 0x00000001,
D3D12XBOX_SYNC_FLAG_ICACHE_RANGE = 0x00000002,
D3D12XBOX_SYNC_FLAG_ICACHE_MARGIN = 0x00000003,
D3D12XBOX_SYNC_FLAG_KCACHE_INVALIDATE = 0x00000080,
D3D12XBOX_SYNC_FLAG_VCACHE_INVALIDATE = 0x00000100,
D3D12XBOX_SYNC_FLAG_MCACHE_INVALIDATE = 0x00000020,
D3D12XBOX_SYNC_FLAG_MCACHE_WRITEBACK = 0x00000010,
D3D12XBOX_SYNC_FLAG_GL0_INVALIDATE = D3D12XBOX_SYNC_FLAG_VCACHE_INVALIDATE,
D3D12XBOX_SYNC_FLAG_GL1_INVALIDATE = 0x00000200,
D3D12XBOX_SYNC_FLAG_GL1_RANGE = 0x00000008,
D3D12XBOX_SYNC_FLAG_GL1_MARGIN = 0x0000000C,
D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE = 0x00004000,
D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE_UNSHARED = 0x00000400,
D3D12XBOX_SYNC_FLAG_GL2_WRITEBACK = 0x00008000,
D3D12XBOX_SYNC_FLAG_GL2_VOLATILE = 0x00000800,
D3D12XBOX_SYNC_FLAG_GL2_RANGE = 0x00001000,
D3D12XBOX_SYNC_FLAG_GL2_MARGIN = 0x00001800,
D3D12XBOX_SYNC_FLAG_BASE_COHERENCY = 0x01000000,
D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_COHERENCY = 0x40000000,
D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_COHERENCY = 0x20000000,
D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_INVALIDATE = 0x02000000,
D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_INVALIDATE = 0x04000000,
D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_DATA_FLUSH = 0x00040000,
D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_DATA_FLUSH = 0x00080000,
D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_META_FLUSH = 0x08000000,
D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_META_FLUSH = 0x10000000,
D3D12XBOX_SYNC_FLAG_CS_PARTIAL_FLUSH = 0x00100000,
D3D12XBOX_SYNC_FLAG_VS_PARTIAL_FLUSH = 0x00200000,
D3D12XBOX_SYNC_FLAG_PS_PARTIAL_FLUSH = 0x00400000,
D3D12XBOX_SYNC_FLAG_STREAMOUT_FLUSH = 0x00800000,
D3D12XBOX_SYNC_FLAG_PFP_SYNC_ME = 0x00000040,
D3D12XBOX_SYNC_FLAG_SYNC_CPDMA = 0x00020000,
D3D12XBOX_SYNC_FLAG_IDLE = 0x80000000,
D3D12XBOX_SYNC_FLAG_TOP_MASK = D3D12XBOX_SYNC_FLAG_ICACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_ICACHE_RANGE | D3D12XBOX_SYNC_FLAG_ICACHE_MARGIN | D3D12XBOX_SYNC_FLAG_KCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_VCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_MCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_MCACHE_WRITEBACK | D3D12XBOX_SYNC_FLAG_GL1_INVALIDATE | D3D12XBOX_SYNC_FLAG_GL1_RANGE | D3D12XBOX_SYNC_FLAG_GL1_MARGIN | D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE | D3D12XBOX_SYNC_FLAG_GL2_WRITEBACK | D3D12XBOX_SYNC_FLAG_GL2_VOLATILE | D3D12XBOX_SYNC_FLAG_GL2_MARGIN | D3D12XBOX_SYNC_FLAG_GL2_RANGE | D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE_UNSHARED | D3D12XBOX_SYNC_FLAG_BASE_COHERENCY | D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_COHERENCY | D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_COHERENCY | D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_INVALIDATE | D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_INVALIDATE | D3D12XBOX_SYNC_FLAG_PFP_SYNC_ME | D3D12XBOX_SYNC_FLAG_IDLE,
D3D12XBOX_SYNC_FLAG_BOP_MASK = D3D12XBOX_SYNC_FLAG_VCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_MCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_MCACHE_WRITEBACK | D3D12XBOX_SYNC_FLAG_GL1_INVALIDATE | D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE | D3D12XBOX_SYNC_FLAG_GL2_WRITEBACK | D3D12XBOX_SYNC_FLAG_GL2_VOLATILE | D3D12XBOX_SYNC_FLAG_GL2_RANGE | D3D12XBOX_SYNC_FLAG_GL2_MARGIN | D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE_UNSHARED | D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_DATA_FLUSH | D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_DATA_FLUSH | D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_META_FLUSH | D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_META_FLUSH | D3D12XBOX_SYNC_FLAG_CS_PARTIAL_FLUSH | D3D12XBOX_SYNC_FLAG_VS_PARTIAL_FLUSH | D3D12XBOX_SYNC_FLAG_PS_PARTIAL_FLUSH | D3D12XBOX_SYNC_FLAG_STREAMOUT_FLUSH | D3D12XBOX_SYNC_FLAG_IDLE,
D3D12XBOX_SYNC_FLAG_TOP_COMPUTE_MASK = D3D12XBOX_SYNC_FLAG_ICACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_ICACHE_RANGE | D3D12XBOX_SYNC_FLAG_ICACHE_MARGIN | D3D12XBOX_SYNC_FLAG_KCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_VCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_MCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_MCACHE_WRITEBACK | D3D12XBOX_SYNC_FLAG_GL1_INVALIDATE | D3D12XBOX_SYNC_FLAG_GL1_RANGE | D3D12XBOX_SYNC_FLAG_GL1_MARGIN | D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE | D3D12XBOX_SYNC_FLAG_GL2_WRITEBACK | D3D12XBOX_SYNC_FLAG_GL2_VOLATILE | D3D12XBOX_SYNC_FLAG_GL2_RANGE | D3D12XBOX_SYNC_FLAG_GL2_MARGIN | D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE_UNSHARED | D3D12XBOX_SYNC_FLAG_IDLE,
D3D12XBOX_SYNC_FLAG_BOP_COMPUTE_MASK = D3D12XBOX_SYNC_FLAG_VCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_MCACHE_INVALIDATE | D3D12XBOX_SYNC_FLAG_MCACHE_WRITEBACK | D3D12XBOX_SYNC_FLAG_GL1_INVALIDATE | D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE | D3D12XBOX_SYNC_FLAG_GL2_WRITEBACK | D3D12XBOX_SYNC_FLAG_GL2_VOLATILE | D3D12XBOX_SYNC_FLAG_GL2_RANGE | D3D12XBOX_SYNC_FLAG_GL2_MARGIN | D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE_UNSHARED | D3D12XBOX_SYNC_FLAG_CS_PARTIAL_FLUSH | D3D12XBOX_SYNC_FLAG_IDLE,
} D3D12XBOX_SYNC_FLAGS
Constantes
| Constante | Description |
|---|---|
| D3D12XBOX_SYNC_FLAG_NONE | Aucun indicateur. |
| D3D12XBOX_SYNC_FLAG_ICACHE_INVALIDATE | Invalide les lignes du cache d’instructions du nuanceur (toutes les lignes par défaut). ICACHE est le cache des programmes de nuanceur. |
| D3D12XBOX_SYNC_FLAG_ICACHE_RANGE | Invalide uniquement les lignes du cache d’instructions du nuanceur qui se trouvent dans la plage donnée. ICACHE est le cache des programmes de nuanceur. |
| D3D12XBOX_SYNC_FLAG_ICACHE_MARGIN | Invalide uniquement la ligne du cache d’instructions du nuanceur au début de la plage donnée et la ligne de cache à la fin de la plage donnée (aussi appelé FIRST_LAST). ICACHE est le cache des programmes de nuanceur. |
| D3D12XBOX_SYNC_FLAG_KCACHE_INVALIDATE | Invalide toutes les lignes du cache de constantes scalaires du nuanceur. |
| D3D12XBOX_SYNC_FLAG_VCACHE_INVALIDATE | Invalide toutes les lignes du cache vectoriel du nuanceur (aussi appelé GL0/TCP). |
| D3D12XBOX_SYNC_FLAG_MCACHE_INVALIDATE | Invalide toutes les lignes du cache de métadonnées. MCACHE est le cache des métadonnées utilisé pour l’accès des nuanceurs aux ressources de couleur et de profondeur/gabarit compressées. |
| D3D12XBOX_SYNC_FLAG_MCACHE_WRITEBACK | Vide toutes les lignes du cache de métadonnées. MCACHE est le cache des métadonnées utilisé pour l’accès des nuanceurs aux ressources de couleur et de profondeur/gabarit compressées. |
| D3D12XBOX_SYNC_FLAG_GL0_INVALIDATE | Invalide toutes les lignes du cache vectoriel du nuanceur (aussi appelé VCACHE/TCP). |
| D3D12XBOX_SYNC_FLAG_GL1_INVALIDATE | Invalide les lignes du cache de niveau 1 du nuanceur (toutes les lignes par défaut). |
| D3D12XBOX_SYNC_FLAG_GL1_RANGE | Invalide uniquement les lignes du cache de niveau 1 du nuanceur qui se trouvent dans la plage donnée. |
| D3D12XBOX_SYNC_FLAG_GL1_MARGIN | Invalide uniquement la ligne du cache de niveau 1 du nuanceur au début de la plage donnée et la ligne de cache à la fin de la plage donnée (aussi appelé FIRST_LAST). |
| D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE | Invalide les lignes du cache de niveau 2 du nuanceur (toutes les lignes par défaut). |
| D3D12XBOX_SYNC_FLAG_GL2_INVALIDATE_UNSHARED | Invalide uniquement les lignes du cache de niveau 2 du nuanceur qui contiennent des données non partagées. |
| D3D12XBOX_SYNC_FLAG_GL2_WRITEBACK | Vide les lignes du cache de niveau 2 du nuanceur (toutes les lignes par défaut). |
| D3D12XBOX_SYNC_FLAG_GL2_VOLATILE | Invalide et/ou vide toutes les lignes du cache de niveau 2 du nuanceur marquées comme volatiles (la plage/marge est ignorée). |
| D3D12XBOX_SYNC_FLAG_GL2_RANGE | Invalide et/ou vide uniquement les lignes du cache de niveau 2 du nuanceur qui se trouvent dans la plage donnée. |
| D3D12XBOX_SYNC_FLAG_GL2_MARGIN | Invalide et/ou vide uniquement la ligne du cache de niveau 2 du nuanceur au début de la plage donnée et la ligne de cache à la fin de la plage donnée (aussi appelé FIRST_LAST). |
| D3D12XBOX_SYNC_FLAG_BASE_COHERENCY | Avant de vider les caches, vérifie si des contextes graphiques valides effectuent des écritures en cours dans la plage spécifiée. |
| D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_COHERENCY | Avant de vider le cache, vérifie si un rendu en cours vers RenderTarget0 à RenderTarget7 a lieu dans la plage spécifiée. Cette vérification garantit la cohérence du cache du tampon de couleur. La cohérence signifie que le contenu des différents caches mémoire est identique. |
| D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_COHERENCY | Avant de vider les caches, vérifie si le tampon de profondeur ou la surface HTILE se trouvent dans la plage spécifiée. |
| D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_INVALIDATE | Efface et invalide toutes les lignes du cache de couleur. |
| D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_INVALIDATE | Efface et invalide toutes les lignes du cache de profondeur. |
| D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_DATA_FLUSH | Vide les données du bloc de couleur. |
| D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_DATA_FLUSH | Vide les données du bloc de profondeur. |
| D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_META_FLUSH | Vide les métadonnées du bloc de couleur. |
| D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_META_FLUSH | Vide les métadonnées du bloc de profondeur. |
| D3D12XBOX_SYNC_FLAG_CS_PARTIAL_FLUSH | Garantit que tous les CS ont terminé leur exécution avant que d’autres commandes soient traitées par le processeur de commandes (CP). |
| D3D12XBOX_SYNC_FLAG_VS_PARTIAL_FLUSH | Garantit que tous les VS ont terminé leur exécution avant que d’autres commandes soient traitées par le processeur de commandes (CP). |
| D3D12XBOX_SYNC_FLAG_PS_PARTIAL_FLUSH | Garantit que tous les PS ont terminé leur exécution avant que d’autres commandes soient traitées par le processeur de commandes (CP). |
| D3D12XBOX_SYNC_FLAG_STREAMOUT_FLUSH | Vide les caches de sortie de flux (stream-out). |
| D3D12XBOX_SYNC_FLAG_PFP_SYNC_ME | Synchronise le PFP du processeur de commandes avec le ME. |
| D3D12XBOX_SYNC_FLAG_SYNC_CPDMA | Garantit que toutes les transactions CPDMA sont terminées avant que d’autres commandes soient traitées par le processeur de commandes (CP). Consultez aussi D3D12XBOX_SYNC_CONTROL_FLAG_CPDMA_SELECT_ENGINE_PFP |
| D3D12XBOX_SYNC_FLAG_IDLE | Force le GPU à attendre d’être inactif après avoir effectué les vidages en bas de pipeline et avant de procéder à l’invalidation en haut de pipeline. |
| D3D12XBOX_SYNC_FLAG_TOP_MASK | Applique tous les indicateurs de haut de pipeline (TOP). |
| D3D12XBOX_SYNC_FLAG_BOP_MASK | Applique tous les indicateurs de bas de pipeline (BOP). |
| D3D12XBOX_SYNC_FLAG_TOP_COMPUTE_MASK | Applique tous les indicateurs de calcul destinés au haut de pipeline (TOP). |
| D3D12XBOX_SYNC_FLAG_BOP_COMPUTE_MASK | Applique tous les indicateurs de calcul destinés au bas de pipeline (BOP). |
Remarques
Cette énumération est utilisée par les éléments d’API suivants :- Cette énumération est retournée indirectement par ResourceBarrierX (par l’intermédiaire de la structure D3D12XBOX_RESOURCE_BARRIER_SUMMARY_ACTIONS).
- Cette énumération est passée à SyncTopOfPipeX.
- Cette énumération est passée à SyncBottomOfPipeX.
- Cette énumération est passée à Write32BitValueBottomOfPipe2X.
- Cette énumération est passée à Write64BitValueBottomOfPipe2X.
- Cette énumération est passée indirectement à Signal2X.
- Cette énumération est passée indirectement à WaitX.
