Condividi tramite


DXGKDDI_MIRACAST_CREATE_CONTEXT funzione di callback (dispmprt.h)

Crea un contesto in modalità kernel per un dispositivo Miracast.

Sintassi

DXGKDDI_MIRACAST_CREATE_CONTEXT DxgkddiMiracastCreateContext;

NTSTATUS DxgkddiMiracastCreateContext(
  [in]  PVOID DriverContext,
  [in]  DXGK_MIRACAST_DISPLAY_CALLBACKS *MiracastCallbacks,
  [out] PVOID *MiracastContext,
  [out] ULONG *TargetId
)
{...}

Parametri

[in] DriverContext

Handle di un blocco di contesto associato a una scheda di visualizzazione. La funzione DxgkDdiAddDevice del driver miniport di visualizzazione ha fornito in precedenza questo handle al sottosistema del kernel grafico DirectX.

[in] MiracastCallbacks

Puntatore a un buffer fornito dal sistema operativo che contiene una struttura DXGK_MIRACAST_DISPLAY_CALLBACKS con puntatori alle funzioni di callback che il driver può chiamare.

[out] MiracastContext

Puntatore a un buffer fornito dal sistema operativo che contiene l'indirizzo del contesto allocato dal driver per questa istanza del dispositivo Miracast.

[out] TargetId

Puntatore a un buffer fornito dal sistema operativo che contiene l'ID della destinazione VidPN a cui è connesso il dispositivo Miracast. Il driver deve segnalare questa destinazione come tipo D3DKMDT_VOT_MIRACAST quando il sistema operativo chiama il DxgkDdiQueryChildRelations funzione durante l'inizializzazione del dispositivo.

Valore restituito

Restituisce STATUS_SUCCESS se ha esito positivo. In caso contrario, restituisce uno dei codici di errore definiti in Ntstatus.h, tra cui:

Codice restituito Descrizione
STATUS_RESOURCE_IN_USE Le risorse hardware necessarie per supportare una sessione connessa Miracast non sono attualmente disponibili.

Osservazioni

Quando questa funzione viene chiamata, il driver miniport di visualizzazione deve preparare tutte le risorse in modalità kernel necessarie per supportare una sessione connessa Miracast.

sincronizzazione

Il sistema operativo raggruppa DxgkDdiMiracastCreateContext, DxgkDdiMiracastDestroyContexte DxgkDdiMiracastIoControl funziona come classe miracast. Il sistema operativo garantisce che queste funzioni seguano la modalità di sincronizzazione di secondo livello, come definito in threading e sincronizzazione secondo livello. Queste funzioni possono essere chiamate quando vengono chiamate altre classi di livello 0, 1 o altre classi di funzioni di livello 2 in un altro contesto di thread. Tuttavia, solo una di queste funzioni di classe Miracast di livello 2 può essere chiamata alla volta.

Fabbisogno

Requisito Valore
client minimo supportato Windows 8.1
server minimo supportato Windows Server 2012 R2
piattaforma di destinazione Desktop
intestazione dispmprt.h (include Dispmprt.h)
IRQL PASSIVE_LEVEL

Vedere anche

DXGK_MIRACAST_DISPLAY_CALLBACKS

DxgkDdiAddDevice

DxgkDdiQueryChildRelations