DXGKDDI_VIDPN_ASSIGNSOURCEMODESET Rückruffunktion (d3dkmddi.h)

Die pfnAssignSourceModeSet-Funktion weist einen Quellmodus zu, der einer bestimmten Quelle in einem angegebenen VidPN festgelegt ist.

Syntax

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
)
{...}

Parameter

[in] hVidPn

Ein Handle für ein VidPN-Objekt. Der VidPN-Manager hat dieses Handle zuvor für den Anzeige-Miniporttreiber bereitgestellt, indem er DxgkDdiEnumVidPnCofuncModality oder DxgkDdiRecommendFunctionalVidPn aufgerufen hat.

[in] VidPnSourceId

Eine ganze Zahl, die eine der vorhandenen Videoquellen identifiziert, die dem VidPN-Objekt zugeordnet sind.

[in] hVidPnSourceModeSet

Ein Handle für das Quellmodus-Setobjekt, das der durch VidPnSourceId identifizierten Quelle zugewiesen werden soll. Der Anzeige-Miniporttreiber hat dieses Handle zuvor durch Aufrufen von pfnCreateNewSourceModeSet abgerufen.

Rückgabewert

Die pfnAssignSourceModeSet-Funktion gibt einen der folgenden Werte zurück:

Rückgabecode Beschreibung
STATUS_SUCCESS Die Funktion wurde erfolgreich ausgeführt.
STATUS_GRAPHICS_INVALID_VIDPN Das in hVidPn angegebene Handle war ungültig.
STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE Der in VidPnSourceId angegebene Bezeichner war ungültig.
STATUS_GRAPHICS_INVALID_VIDPN_SOURCEMODESET Das in hVidPnSourceModeSet angegebene Handle war ungültig.
STATUS_GRAPHICS_PINNED_MODE_MUST_REMAIN_IN_SET Der Quellmodussatz, den Sie zuweisen möchten, enthält nicht den Modus, der bereits an die Quelle angeheftet war.

Hinweise

VidPN-Quellbezeichner werden vom Betriebssystem zugewiesen. DxgkDdiStartDevice, das vom Anzeigeminiporttreiber implementiert wurde, gibt die Anzahl N der von der Grafikkarte unterstützten Videoquellen zurück. Dann weist das Betriebssystem die Bezeichner 0, 1, 2, ... N - 1.

Wenn Sie ein Handle abrufen, indem Sie pfnCreateNewSourceModeSet aufrufen und dieses Handle dann an pfnAssignSourceModeSet übergeben, müssen Sie das Handle nicht freigeben, indem Sie pfnReleaseSourceModeSet aufrufen.

Wenn Sie durch Aufrufen von pfnCreateNewSourceModeSet ein Handle abrufen und dann entscheiden, den neuen Quellmodus nicht einer Quelle zuzuweisen, müssen Sie das neu abgerufene Handle freigeben, indem Sie pfnReleaseSourceModeSet aufrufen.

Hinweis Die pfnAssignSourceModeSet-Funktion gibt das Setobjekt des Quellmodus, das durch den hVidPnSourceModeSet-Parameter identifiziert wird, je nachdem, aus welcher Ursache pfnAssignSourceModeSet fehlschlägt, frei oder nicht frei.

pfnAssignSourceModeSet gibt das Setobjekt des Quellmodus nicht frei, wenn pfnAssignSourceModeSet mit einem ungültigen Eingabeparameter fehlschlägt (d. h. schlägt mit dem STATUS_GRAPHICS_INVALID_VIDPN, STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE oder STATUS_GRAPHICS_INVALID_VIDPN_SOURCEMODESET Fehlercode fehl), da die angegebenen Parameter nicht ausreichten, damit das Betriebssystem bestimmen kann, welcher Modus das objekt freigeben soll. Solche ungültigen Parametersituationen weisen auf einen groben Codierungsfehler im Treiber hin. Sie können diesen Fehler beheben, indem Sie das richtige VidPN-Handle, quellbezeichner oder VidPN-Quellmodus-Sethandle angeben.

pfnAssignSourceModeSet gibt das Setobjekt des Quellmodus frei, nachdem alle Eingabeparameter erfolgreich überprüft wurden, wenn pfnAssignSourceModeSet aus einem der folgenden Gründe fehlschlägt:

  • Der Quellmodus ist leer.
  • Der Quellmodussatz enthält keinen Modus, der ggf. im vorherigen Modussatz angeheftet ist.
  • Der Quellmodussatz wurde nicht für die Quelle erstellt, die von VidPnSourceId identifiziert wird.
 
Der datentyp D3DDDI_VIDEO_PRESENT_SOURCE_ID wird in D3dukmdt.h definiert.

Die Datentypen D3DKMDT_HVIDPN und D3DKMDT_HVIDPNSOURCEMODESET werden in D3dkmdt.h definiert.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Zielplattform Desktop
Kopfzeile d3dkmddi.h (einschließlich D3dkmddi.h)
IRQL PASSIVE_LEVEL

Weitere Informationen

VidPN-Quellmodus-Set-Schnittstelle

pfnCreateNewSourceModeSet