DXGKDDI_OPENALLOCATIONINFO funzione di callback (d3dkmddi.h)
La funzione DxgkDdiOpenAllocation associa allocazioni non specifiche del dispositivo create dalla funzione DxgkDdiCreateAllocation alle allocazioni specifiche del dispositivo di contesto grafico specificato.
Sintassi
DXGKDDI_OPENALLOCATIONINFO DxgkddiOpenallocationinfo;
NTSTATUS DxgkddiOpenallocationinfo(
[in] IN_CONST_HANDLE hDevice,
[in] IN_CONST_PDXGKARG_OPENALLOCATION pOpenAllocation
)
{...}
Parametri
[in] hDevice
Handle per il dispositivo del contesto grafico a cui sono associate le allocazioni. La funzione DxgkDdiCreateDevice del driver miniport di visualizzazione ha fornito in precedenza questo handle al sottosistema kernel grafico Microsoft DirectX nel membro hDevice della struttura DXGKARG_CREATEDEVICE .
[in] pOpenAllocation
Puntatore a una struttura DXGKARG_OPENALLOCATION che contiene informazioni sulle allocazioni di binding.
Valore restituito
DxgkDdiOpenAllocation restituisce uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
STATUS_SUCCESS | DxgkDdiOpenAllocation ha associato correttamente le allocazioni al dispositivo del contesto grafico specificato dal parametro hDevice. |
STATUS_INVALID_PARAMETER | I parametri passati a DxgkDdiOpenAllocation contengono errori che impedivano il completamento. |
STATUS_NO_MEMORY | DxgkDdiOpenAllocation non è riuscito ad allocare memoria necessaria per il completamento. |
STATUS_GRAPHICS_DRIVER_MISMATCH | Il driver miniport dello schermo non è compatibile con il driver di visualizzazione in modalità utente che ha avviato la chiamata a DxgkDdiOpenAllocation (ovvero, fornito dati privati al driver miniport di visualizzazione). |
Commenti
Il sottosistema kernel grafico DirectX chiama la funzione DxgkDdiOpenAllocation del driver miniport di visualizzazione per associare allocazioni non specifiche del dispositivo create dalla funzione DxgkDdiCreateAllocation alle allocazioni specifiche del dispositivo di contesto grafico specificato dal parametro hDevice . Il driver miniport di visualizzazione associa le allocazioni a un dispositivo in modo che il driver possa tenere traccia dei dati di allocazione specifici di un dispositivo.
Il driver miniport di visualizzazione può associare un'allocazione a qualsiasi dispositivo che qualsiasi processo (nella stessa scheda grafica) creato e non solo a un dispositivo nel processo di creazione.
Quando DxgkDdiOpenAllocation restituisce STATUS_SUCCESS, il driver imposta il membro hDeviceSpecificAllocation della struttura DXGK_OPENALLOCATIONINFO per ogni allocazione su un valore non NULL. La struttura DXGK_OPENALLOCATIONINFO per ogni allocazione è un elemento della matrice specificata dal membro pOpenAllocation della struttura DXGKARG_OPENALLOCATION .
Il driver può modificare i dati del driver privato di allocazione passati nel membro pPrivateDriverData della struttura DXGK_OPENALLOCATIONINFO solo quando viene creata l'allocazione ( che viene indicato quando è impostato il flag Crea campo di bit nel membro Flags della struttura DXGKARG_OPENALLOCATION ). Il driver deve determinare che può leggere solo i dati del driver privato di allocazione quando viene aperta l'allocazione, ovvero quando il flag Crea campo di bit non è impostato.
DxgkDdiOpenAllocation deve essere reso impaginabile.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista |
Piattaforma di destinazione | Desktop |
Intestazione | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |