Freigeben über


DXGKDDI_VIDPN_ASSIGNSOURCEMODESET Rückruffunktion (d3dkmddi.h)

Die pfnAssignSourceModeSet Funktion weist einer bestimmten Quelle in einem angegebenen VidPN einen Quellmodus zu.

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 zu einem VidPN-Objekt. Der VidPN-Manager hat diesem Handle zuvor den Miniporttreiber angezeigt, indem er DxgkDdiEnumVidPnCofuncModality oder DxgkDdiRecommendFunctionalVidPnaufruft.

[in] VidPnSourceId

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

[in] hVidPnSourceModeSet

Ein Handle für das Vom Quellmodus festgelegte Objekt, das der durch VidPnSourceIdidentifizierten Quelle zugewiesen werden soll. Der Display-Miniporttreiber hat dieses Handle zuvor durch Aufrufen pfnCreateNewSourceModeSetabgerufen.

Rückgabewert

Die funktion pfnAssignSourceModeSet gibt einen der folgenden Werte zurück:

Rückgabecode Beschreibung
STATUS_SUCCESS Die Funktion war erfolgreich.
STATUS_GRAPHICS_INVALID_VIDPN Der in hVidPn bereitgestellte 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 bereitgestellte Handle war ungültig.
STATUS_GRAPHICS_PINNED_MODE_MUST_REMAIN_IN_SET Der von Ihnen zugewiesene Quellmodus enthält nicht den Modus, der bereits an die Quelle angeheftet wurde.

Bemerkungen

VidPN-Quellbezeichner werden vom Betriebssystem zugewiesen. DxgkDdiStartDevice, implementiert vom Display Miniport-Treiber, gibt die Anzahl N der vom Displayadapter unterstützten Videoquellen zurück. Anschließend weist das Betriebssystem 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 pfnReleaseSourceModeSetaufrufen.

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

Hinweis Der pfnAssignSourceModeSet Funktionsfreigaben oder gibt das vom hVidPnSourceModeSet Parameter identifizierte Quellmodussatzobjekt nicht frei, je nachdem, warum pfnAssignSourceModeSet fehlschlug.

pfnAssignSourceModeSet gibt das Objekt für den Quellmodussatz 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 für das Betriebssystem nicht ausreichen, um zu bestimmen, welches Modussatzobjekt freigegeben werden soll. Solche ungültigen Parametersituationen deuten auf einen groben Codierungsfehler im Treiber hin. Sie können diesen Fehler beheben, indem Sie das richtige VidPN-Handle, den Quellbezeichner oder den VidPN-Quellmodus-Set-Handle angeben.

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

  • Der Quellmodussatz ist leer.
  • Der Quellmodussatz enthält keinen Modus, der im vorherigen Modus festgelegt ist, sofern vorhanden.
  • Der Quellmodussatz wurde nicht für die Quelle erstellt, die durch VidPnSourceIdidentifiziert wird.
 
Der D3DDDI_VIDEO_PRESENT_SOURCE_ID Datentyp wird in D3dukmdt.hdefiniert.

Die Datentypen D3DKMDT_HVIDPN und D3DKMDT_HVIDPNSOURCEMODESET werden in D3dkmdt.hdefiniert.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Vista
Zielplattform- Desktop
Header- d3dkmddi.h (einschließlich D3dkmddi.h)
IRQL- PASSIVE_LEVEL

Siehe auch

VidPN Source Mode Set Interface

pfnCreateNewSourceModeSet