DXGKDDI_VIDPN_ASSIGNSOURCEMODESET funzione di callback (d3dkmddi.h)
La funzione pfnAssignSourceModeSet assegna una modalità di origine impostata su un'origine specifica in un oggetto VidPN specificato.
Sintassi
DXGKDDI_VIDPN_ASSIGNSOURCEMODESET DxgkddiVidpnAssignsourcemodeset;
NTSTATUS DxgkddiVidpnAssignsourcemodeset(
[in] IN_D3DKMDT_HVIDPN hVidPn,
[in] IN_CONST_D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId,
[in] IN_CONST_D3DKMDT_HVIDPNSOURCEMODESET hVidPnSourceModeSet
)
{...}
Parametri
[in] hVidPn
Handle per un oggetto VidPN. In precedenza il gestore VidPN ha fornito questo handle al driver miniport visualizzato chiamando DxgkDdiEnumVidPnCofuncModality o DxgkDdiRecommendFunctionalVidPn.
[in] VidPnSourceId
Intero che identifica una delle origini video presenti associate all'oggetto VidPN.
[in] hVidPnSourceModeSet
Handle per l'oggetto set di modalità di origine da assegnare all'origine identificata da VidPnSourceId. Il driver miniport visualizzato ottenuto in precedenza questo handle chiamando pfnCreateNewSourceModeSet.
Valore restituito
La funzione pfnAssignSourceModeSet restituisce uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
STATUS_SUCCESS | Funzione completata. |
STATUS_GRAPHICS_INVALID_VIDPN | L'handle fornito in hVidPn non è valido. |
STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE | L'identificatore fornito in VidPnSourceId non è valido. |
STATUS_GRAPHICS_INVALID_VIDPN_SOURCEMODESET | L'handle fornito in hVidPnSourceModeSet non è valido. |
STATUS_GRAPHICS_PINNED_MODE_MUST_REMAIN_IN_SET | Il set di modalità di origine che si sta tentando di assegnare non contiene la modalità già aggiunta nell'origine. |
Commenti
Gli identificatori di origine VidPN vengono assegnati dal sistema operativo. DxgkDdiStartDevice, implementato dal driver miniport visualizzato, restituisce il numero N di origini video presenti supportate dalla scheda di visualizzazione. Quindi il sistema operativo assegna identificatori 0, 1, 2, ... N - 1.
Se si ottiene un handle chiamando pfnCreateNewSourceModeSet e quindi passando tale handle a pfnAssignSourceModeSet, non è necessario rilasciare l'handle chiamando pfnReleaseSourceModeSet.
Se si ottiene un handle chiamando pfnCreateNewSourceModeSet e quindi si decide di non assegnare la nuova modalità di origine impostata su un'origine, è necessario rilasciare l'handle appena ottenuto chiamando pfnReleaseSourceModeSet.
pfnAssignSourceModeSet non rilascia l'oggetto set di modalità di origine se pfnAssignSourceModeSet ha esito negativo con un parametro di input non valido, ovvero ha esito negativo con l'STATUS_GRAPHICS_INVALID_VIDPN, STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE o STATUS_GRAPHICS_INVALID_VIDPN_SOURCEMODESET codice di errore, perché i parametri specificati non sono sufficienti per il sistema operativo per determinare l'oggetto impostato in modalità da rilasciare. Tali situazioni di parametro non valide indicano un errore di codifica lordo nel driver. È possibile correggere questo errore specificando l'handle vidPN corretto, l'identificatore di origine o l'handle del set di set di impostazioni della modalità di origine VidPN.
pfnAssignSourceModeSet rilascia l'oggetto set di modalità di origine dopo aver convalidato correttamente tutti i parametri di input se pfnAssignSourceModeSet ha esito negativo a causa di uno dei motivi seguenti:
- Il set di modalità di origine è vuoto.
- Il set di modalità di origine non contiene una modalità aggiunta nel set di modalità precedente, se presente.
- Il set di modalità di origine non è stato creato per l'origine identificata da VidPnSourceId.
I tipi di dati D3DKMDT_HVIDPN e D3DKMDT_HVIDPNSOURCEMODESET sono definiti in D3dkmdt.h.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista |
Piattaforma di destinazione | Desktop |
Intestazione | d3dkmddi.h (include D3dkmddi.h) |
IRQL | PASSIVE_LEVEL |