struttura DXGK_PRESENTATIONCAPS (d3dkmddi.h)
La struttura DXGK_PRESENTATIONCAPS identifica le funzionalità di presentazione di un driver miniport visualizzato fornito dal driver tramite una chiamata alla relativa funzione DxgkDdiQueryAdapterInfo .
Sintassi
typedef struct _DXGK_PRESENTATIONCAPS {
union {
struct {
UINT NoScreenToScreenBlt : 1;
UINT NoOverlapScreenBlt : 1;
UINT SupportKernelModeCommandBuffer : 1;
UINT NoSameBitmapAlphaBlend : 1;
UINT NoSameBitmapStretchBlt : 1;
UINT NoSameBitmapTransparentBlt : 1;
UINT NoSameBitmapOverlappedAlphaBlend : 1;
UINT NoSameBitmapOverlappedStretchBlt : 1;
UINT DriverSupportsCddDwmInterop : 1;
UINT Reserved0 : 1;
UINT AlignmentShift : 4;
UINT MaxTextureWidthShift : 3;
UINT MaxTextureHeightShift : 3;
UINT SupportAllBltRops : 1;
UINT SupportMirrorStretchBlt : 1;
UINT SupportMonoStretchBltModes : 1;
UINT StagingRectStartPitchAligned : 1;
UINT NoSameBitmapBitBlt : 1;
UINT NoSameBitmapOverlappedBitBlt : 1;
UINT Reserved1 : 1;
UINT NoTempSurfaceForClearTypeBlend : 1;
UINT SupportSoftwareDeviceBitmaps : 1;
UINT NoCacheCoherentApertureMemory : 1;
UINT SupportLinearHeap : 1;
#if ...
UINT Reserved : 1;
#else
UINT Reserved : 4;
#endif
};
UINT Value;
};
} DXGK_PRESENTATIONCAPS;
Members
[in] NoScreenToScreenBlt
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un trasferimento bit-block (bitblt) dalla superficie primaria alla stessa superficie primaria. Se NoScreenToScreenBlt è impostato, il driver non può eseguire un trasferimento da schermo a blocco di bit. Di conseguenza, il sottosistema del kernel grafico Microsoft DirectX (Dxgkrnl.sys) non richiederà al driver di eseguire tale trasferimento a blocchi di bit.
L'impostazione di questo membro equivale all'impostazione del primo bit del membro Value a 32 bit (0x00000001).
[in] NoOverlapScreenBlt
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un trasferimento a blocchi di bit che si sovrappone. Se NoOverlapScreenBlt è impostato, il driver non può eseguire un trasferimento a blocchi di bit che si sovrappone. Di conseguenza, il sottosistema kernel grafico DirectX non richiederà al driver di eseguire tale trasferimento a blocchi di bit.
L'impostazione di questo membro equivale all'impostazione del secondo bit del membro Value a 32 bit (0x00000002).
SupportKernelModeCommandBuffer
[in] Valore UINT che specifica se il driver miniport di visualizzazione supporta l'elaborazione del buffer dei comandi con accelerazione hardware GDI. Se SupportKernelModeCommandBuffer è impostato, il driver può eseguire varie operazioni di trasferimento a blocchi di bit (bitblt) accelerate dall'hardware e di riempimento quando il sottosistema del kernel grafico DirectX chiama la funzione DxgkDdiRenderKm del driver miniport di visualizzazione.
Supportato a partire da Windows 7.
[in] NoSameBitmapAlphaBlend
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un'operazione di fusione alfa quando le allocazioni di origine e destinazione sono uguali. Se noSameBitmapAlphaBlend è impostato, il driver non può eseguire tale operazione e il sottosistema del kernel grafico DirectX non lo richiederà.
L'impostazione di questo membro equivale all'impostazione del quarto bit del membro Valore a 32 bit (0x00000008).
Supportato a partire da Windows 7.
[in] NoSameBitmapStretchBlt
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un'operazione di trasferimento a blocchi di bit esteso quando le allocazioni di origine e di destinazione sono uguali. Se NoSameBitmapStretchBlt è impostato, il driver non può eseguire tale operazione e il sottosistema del kernel grafico DirectX non lo richiederà.
L'impostazione di questo membro equivale all'impostazione del quinto bit del membro Valore a 32 bit (0x00000010).
Supportato a partire da Windows 7.
[in] NoSameBitmapTransparentBlt
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un'operazione di trasferimento trasparente a bit block quando le allocazioni di origine e di destinazione sono uguali. Se NoSameBitmapStretchBlt è impostato, il driver non può eseguire tale operazione e il sottosistema del kernel grafico DirectX non lo richiederà.
L'impostazione di questo membro equivale all'impostazione del sesto bit del membro Value a 32 bit (0x00000020).
Supportato a partire da Windows 7.
[in] NoSameBitmapOverlappedAlphaBlend
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un'operazione di fusione alfa quando le allocazioni di origine e di destinazione sono uguali e i rettangoli di origine e di destinazione si sovrappongono. Se è impostato NoSameBitmapOverlappedAlphaBlend , il driver non può eseguire tale operazione e il sottosistema del kernel grafico DirectX non lo richiederà.
L'impostazione di questo membro equivale all'impostazione del settimo bit del membro Value a 32 bit (0x00000040).
Supportato a partire da Windows 7.
[in] NoSameBitmapOverlappedStretchBlt
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un'operazione di trasferimento a blocchi di bit esteso quando le allocazioni di origine e di destinazione sono uguali e i rettangoli di origine e di destinazione si sovrappongono. Se noSameBitmapOverlappedStretchBlt è impostato, il driver non può eseguire tale operazione e il sottosistema del kernel grafico DirectX non lo richiederà.
L'impostazione di questo membro equivale all'impostazione dell'otto bit del membro Value a 32 bit (0x00000080).
Supportato a partire da Windows 7.
[in] DriverSupportsCddDwmInterop
Valore UINT che specifica se il driver miniport di visualizzazione supporta le operazioni cdD (Canonical Display Driver) per le allocazioni di trame create dal driver in modalità utente per Desktop Windows Manager (DWM) da usare. Se DriverSupportsCddDwmInterop è impostato, il driver miniport di visualizzazione supporta tali operazioni presenti.
Se il driver miniport di visualizzazione supporta l'accelerazione hardware GDI, DriverSupportsCddDwmInterop viene ignorato. In questo caso il driver deve supportare le operazioni CDD presenti nelle allocazioni di trame DWM create dal driver in modalità utente.
L'impostazione di questo membro equivale all'impostazione del nono bit del membro Value a 32 bit (0x00000100).
Supportato a partire da Windows 7.
[in] Reserved0
Questo membro è riservato e deve essere impostato su zero.
L'impostazione di questo membro equivale all'impostazione del decimo bit del membro Valore a 32 bit (0x00000200).
Supportato a partire da Windows 7.
[in] AlignmentShift
Valore UINT che specifica il valore di allineamento minimo, in byte, richiesto dai membri XxxPitch delle strutture DXGK_GDIARG_XXX. AlignmentShift viene assegnato come esponente binario. Ad esempio, per specificare un valore di allineamento obbligatorio di 16 byte, il driver miniport di visualizzazione deve impostare AlignmentShift = 4. Il valore minimo è AlignmentShift = 2, che specifica un allineamento a 4 byte.
L'impostazione di questo membro equivale all'impostazione dell'undicesimo bit del membro Value a 32 bit (0x00000400).
Supportato a partire da Windows 7.
[in] MaxTextureWidthShift
Valore UINT che specifica la larghezza massima della trama supportata dal driver miniport di visualizzazione, calcolata come:
Larghezza massima della trama supportata = 2 ^ (MaxTextureWidthShift + 11) texel.
Ad esempio, se MaxTextureWidthShift = 0, la larghezza massima supportata della trama è 2 ^ 11 = 2048.
L'impostazione di questo membro equivale all'impostazione del dodicesimo bit del membro Value a 32 bit (0x00000800).
Supportato a partire da Windows 7.
[in] MaxTextureHeightShift
Valore UINT che specifica l'altezza massima della trama supportata dal driver miniport di visualizzazione, calcolata come:
altezza massima della trama supportata = 2 ^ (MaxTextureHeightShift + 11) texel.
Ad esempio, se MaxTextureHeightShift = 0, l'altezza massima supportata della trama è 2 ^ 11 = 2048.
L'impostazione di questo membro equivale all'impostazione del tredicesimo bit del membro Value a 32 bit (0x00001000).
Supportato a partire da Windows 7.
[in] SupportAllBltRops
Valore UINT che specifica se il driver miniport di visualizzazione supporta tutte le operazioni raster GDI ROP3 con colore a tinta unita come motivo nei comandi BitBlt e ColorFill. Se SupportAllBltRops è impostato, il driver supporta tali operazioni raster.
L'impostazione di questo membro equivale all'impostazione del quattordicesimo bit del membro Value a 32 bit (0x00002000).
Supportato a partire da Windows 7.
[in] SupportMirrorStretchBlt
Valore UINT che specifica se il driver miniport di visualizzazione supporta le operazioni Stretch Blt (utilizzando la struttura DXGK_GDIARG_STRETCHBLT ) in modalità mirror. Se supportMirrorStretchBlt è impostato, il driver supporta tali operazioni.
L'impostazione di questo membro equivale all'impostazione del quindicesimo bit del membro Value a 32 bit (0x00004000).
Supportato a partire da Windows 7.
[in] SupportMonoStretchBltModes
Valore UINT che specifica se il driver miniport di visualizzazione supporta le operazioni Stretch Blt (utilizzando la struttura DXGK_GDIARG_STRETCHBLT ) in modalità di rendering monocromatica BLACKONWHITE o WHITEONBLACK. Se SupportMonoStretchBltModes è impostato, il driver supporta tali operazioni.
L'impostazione di questo membro equivale all'impostazione del sedicesimo bit del membro Value a 32 bit (0x00008000).
Supportato a partire da Windows 7.
[in] StagingRectStartPitchAligned
Valore UINT che specifica se il driver miniport di visualizzazione richiede il punto iniziale (in alto a sinistra) nel rettangolo su una superficie di staging visibile dalla CPU per essere allineato al passo, il che significa che la coordinata sinistra è 0. Se AlignmentShift è impostato, il punto superiore sinistro del rettangolo è allineato al passo.
L'impostazione di questo membro equivale all'impostazione del diciassettesimo bit del membro Value a 32 bit (0x00010000).
Supportato a partire da Windows 7.
[in] NoSameBitmapBitBlt
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un'operazione di trasferimento a blocchi di bit quando le allocazioni di origine e di destinazione sono uguali. Se noSameBitmapBitBlt è impostato, il driver non può eseguire tale operazione. Di conseguenza, il sottosistema kernel grafico DirectX non richiederà che il driver esegua un'operazione di questo tipo.
L'impostazione di questo membro equivale all'impostazione del diciottesimo bit del membro Value a 32 bit (0x00020000).
Supportato a partire da Windows 7.
[in] NoSameBitmapOverlappedBitBlt
Valore UINT che specifica se il driver miniport di visualizzazione può eseguire un'operazione di trasferimento a blocchi di bit quando le allocazioni di origine e di destinazione sono uguali e i rettangoli di origine e di destinazione si sovrappongono. Se NoSameBitmapOverlappedBitBlt è impostato, il driver non può eseguire tale operazione e il sottosistema del kernel grafico DirectX non lo richiederà.
L'impostazione di questo membro equivale all'impostazione del diciannovesimo bit del membro Value a 32 bit (0x00040000).
Supportato a partire da Windows 7.
[in] Reserved1
Questo membro è riservato e deve essere impostato su zero. L'impostazione di questo membro su zero equivale all'impostazione del ventesimo bit del membro Value a 32 bit (0x00080000).
Supportato a partire da Windows 7.
[in] NoTempSurfaceForClearTypeBlend
Valore UINT che specifica se il driver necessita di una superficie temporanea durante l'elaborazione dei comandi specificati dal membro ClearTypeBlend della struttura DXGK_RENDERKM_COMMAND . Se è impostato NoTempSurfaceForClearTypeBlend , il driver non necessita di una superficie temporanea. In questo caso, il driver userà meno memoria video.
L'impostazione di questo membro su zero equivale all'impostazione del ventunesimo bit del membro Value a 32 bit (0x00100000).
Supportato a partire da Windows 7.
[in] SupportSoftwareDeviceBitmaps
Questo membro è riservato e deve essere impostato su zero.
L'impostazione di questo membro equivale a impostare il ventiduesimo bit del membro Valore a 32 bit (0x00200000).
Supportato a partire da Windows 8.
[in] NoCacheCoherentApertureMemory
Valore UINT che specifica che il driver non supporta la memoria di apertura coerente della cache.
L'impostazione di questo membro equivale a impostare il ventitreesimo bit del membro Valore a 32 bit (0x00400000).
Supportato a partire da Windows 8.
[in] SupportLinearHeap
Il driver supporta l'allocazione dell'heap lineare dalle superfici di staging.
L'impostazione di questo membro equivale a impostare il ventiquattro bit del membro Valore a 32 bit (0x00800000).
Supportato a partire da Windows 8.
[in] Reserved
Questo membro è riservato e deve essere impostato su zero.
L'impostazione di questo membro equivale a impostare il venticinque bit del membro Valore a 32 bit (0x01000000).
Supportato a partire da Windows 8.
[in] Questo membro è riservato e deve essere impostato su zero.
L'impostazione di questo membro equivale a impostare il venticinque bit del membro Valore a 32 bit (0x02000000).
Supportato a partire da Windows 8.
Value
Valore a 32 bit che identifica le funzionalità di presentazione del driver.
Commenti
Un driver miniport visualizzato può specificare le funzionalità di presentazione impostando bit nel membro Valore a 32 bit o impostando singoli membri della struttura nell'unione che DXGK_PRESENTATIONCAPS contiene.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista |
Intestazione | d3dkmddi.h (include D3dkmddi.h) |