DXGKDDI_VIDPNTOPOLOGY_ENUMPATHTARGETSFROMSOURCE fonction de rappel (d3dkmddi.h)
La fonction pfnEnumPathTargetsFromSource retourne l’identificateur de l’une des cibles présentes vidéo associées à une source de vidéo présente spécifiée.
Syntaxe
DXGKDDI_VIDPNTOPOLOGY_ENUMPATHTARGETSFROMSOURCE DxgkddiVidpntopologyEnumpathtargetsfromsource;
NTSTATUS DxgkddiVidpntopologyEnumpathtargetsfromsource(
[in] IN_CONST_D3DKMDT_HVIDPNTOPOLOGY hVidPnTopology,
[in] IN_CONST_D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId,
[in] IN_CONST_D3DKMDT_VIDPN_PRESENT_PATH_INDEX VidPnPresentPathIndex,
[out] OUT_PD3DDDI_VIDEO_PRESENT_TARGET_ID pVidPnTargetId
)
{...}
Paramètres
[in] hVidPnTopology
Handle pour un objet de topologie VidPN. Le pilote de miniport d’affichage a précédemment obtenu ce handle en appelant la fonction pfnGetTopology de l’interface DXGK_VIDPN_INTERFACE .
[in] VidPnSourceId
Entier qui identifie la source présente d’une vidéo particulière.
[in] VidPnPresentPathIndex
Index de base zéro dans l’ensemble de chemins qui contiennent la source identifiée par VidPnSourceId.
[out] pVidPnTargetId
Pointeur vers une variable qui reçoit l’identificateur cible.
Valeur retournée
La fonction pfnEnumPathTargetsFromSource retourne l’une des valeurs suivantes :
Code de retour | Description |
---|---|
STATUS_SUCCESS | La fonction a réussi. |
STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY | Le handle fourni dans hVidPnTopology n’était pas valide. |
STATUS_INVALID_PARAMETER | Le pointeur fourni dans pVidPnTargetId était valide. |
Remarques
VidPnPresentPathIndex n’est pas un index dans l’ensemble de tous les chemins de la topologie identifiés par hVidPnTopology. Il s’agit d’un index dans un sous-ensemble de tous les chemins de la topologie : plus précisément, le sous-ensemble de tous les chemins qui contiennent la source identifiée par VidPnSourceId.
Pour énumérer (dans une topologie donnée) toutes les cibles associées à une source particulière, procédez comme suit.
Appelez pfnGetNumPathsFromSource pour déterminer le nombre de chemins d’accès qui contiennent la source d’intérêt. Considérez ces chemins comme un ensemble indexé avec les index 0, 1, ... N - 1.
Pour chaque index 0 par N - 1, passez l’identificateur source et l’index à pfnEnumPathTargetsFromSource.
Une topologie est un chemin d’accès à une collection, chacun contenant une paire (source, cible). Il est possible qu’une source particulière apparaisse dans plusieurs chemins. Par exemple, une source peut être associée à deux cibles distinctes dans le cas d’une vue clone.
Les identificateurs de source VidPN sont attribués par le système d’exploitation. DxgkDdiStartDevice, implémenté par le pilote de miniport d’affichage, retourne le nombre N de sources vidéo présentes prises en charge par la carte graphique. Ensuite, le système d’exploitation affecte les identificateurs 0, 1, 2, ... N - 1.
Les identificateurs de cible VidPN sont attribués par le pilote de miniport d’affichage. DxgkDdiQueryChildRelations, implémenté par le pilote de miniport d’affichage, retourne un tableau de structures DXGK_CHILD_DESCRIPTOR , chacune contenant un identificateur.
Les types de données D3DKMDT_HVIDPNTOPOLOGY et D3DKMDT_VIDPN_PRESENT_PATH_INDEX sont définis dans D3dkmdt.h.
Les types de données D3DDDI_VIDEO_PRESENT_SOURCE_ID et D3DDDI_VIDEO_PRESENT_TARGET_ID sont définis dans D3dukmdt.h.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | d3dkmddi.h (include D3dkmddi.h) |
IRQL | PASSIVE_LEVEL |