DXGKDDI_OPM_CREATE_PROTECTED_OUTPUT fonction de rappel (dispmprt.h)
La fonction DxgkDdiOPMCreateProtectedOutput crée un objet de sortie protégé avec la sémantique COPP (Certified Output Protection Protocol) ou OPM.
Syntaxe
DXGKDDI_OPM_CREATE_PROTECTED_OUTPUT DxgkddiOpmCreateProtectedOutput;
NTSTATUS DxgkddiOpmCreateProtectedOutput(
[in] PVOID MiniportDeviceContext,
[in] D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId,
[in] DXGKMDT_OPM_VIDEO_OUTPUT_SEMANTICS NewVideoOutputSemantics,
[out] PHANDLE NewProtectedOutputHandle
)
{...}
Paramètres
[in] MiniportDeviceContext
Handle d’un bloc de contexte associé à une carte d’affichage. Auparavant, la fonction DxgkDdiAddDevice du pilote miniport d’affichage fournissait cette poignée au sous-système du noyau graphique DirectX.
[in] VidPnTargetId
Entier qui identifie de manière unique la cible présente vidéo qui correspond au nouvel objet de sortie protégé. Chaque cible vidéo présente doit correspondre à un connecteur de moniteur physique. Si VidPnTargetId correspond à plusieurs connecteurs de moniteur physique, DxgkDdiOPMCreateProtectedOutput doit retourner le code d’erreur STATUS_GRAPHICS_OPM_SPANNING_MODE_ENABLED ou STATUS_GRAPHICS_OPM_THEATER_MODE_ENABLED.
[in] NewVideoOutputSemantics
Valeur de type DXGKMDT_OPM_VIDEO_OUTPUT_SEMANTICS qui détermine si la nouvelle sortie protégée a la sémantique COPP ou OPM.
[out] NewProtectedOutputHandle
Pointeur vers une variable qui reçoit le handle vers le nouvel objet de sortie protégé si DxgkDdiOPMCreateProtectedOutput retourne correctement. Le sous-système du noyau graphique DirectX transmet ce handle dans les appels au DxgkDdiOPMGetRandomNumber du pilote miniport d’affichage, DxgkDdiOPMSetSigningKeyAndSequenceNumbersDxgkDdiOPMGetInformation, DxgkDdiOPMGetCOPPCompatibleInformation, DxgkDdiOPMConfigureProtectedOutput et DxgkDdiOPMDestroyProtectedOutput.
Si DxgkDdiOPMCreateProtectedOutput échoue, la valeur de la variable est inchangée.
Valeur retournée
DxgkDdiOPMCreateProtectedOutput retourne l’une des valeurs suivantes.
Code de retour | Description |
---|---|
STATUS_SUCCESS | La fonction a correctement créé un objet de sortie protégé. |
STATUS_GRAPHICS_OPM_NOT_SUPPORTED | Le pilote miniport d’affichage ne prend pas en charge OPM, soit parce que le fournisseur de matériel n’a jamais signé le contrat de licence OPM ou que le matériel graphique du pilote miniport ne respecte pas les règles OPM. |
STATUS_GRAPHICS_COPP_NOT_SUPPORTED | Le pilote miniport d’affichage ne prend pas en charge COPP, soit parce que le fournisseur de matériel n’a jamais signé le contrat de licence COPP ou que le matériel graphique du pilote miniport ne respecte pas les règles COPP. |
STATUS_NO_MEMORY | DxgkDdiOPMCreateProtectedOutput ne peut pas allouer la mémoire nécessaire pour qu’il se termine. |
STATUS_GRAPHICS_OPM_SPANNING_MODE_ENABLED | DxgkDdiOPMCreateProtectedOutput n’a pas pu créer de sortie protégée, car la cible vidéo présente est en mode d’extension. Lorsque la cible vidéo présente est en mode d’étendue, elle correspond à plusieurs connecteurs de moniteur physique et chaque connecteur affiche une partie distincte de la mémoire tampon d’image. Pour obtenir un diagramme montrant comment le pilote miniport d’affichage implémente généralement le mode d’étendue, consultez la section Remarques. Le pilote miniport d’affichage informe le système d’exploitation de la façon dont la mémoire tampon d’image correspond à un moniteur particulier. La moitié gauche de la mémoire tampon d’image s’affiche sur un moniteur et la moitié droite de la mémoire tampon d’image s’affiche sur l’autre moniteur. |
STATUS_GRAPHICS_OPM_THEATER_MODE_ENABLED | DxgkDdiOPMCreateProtectedOutput n’a pas pu créer de sortie protégée, car la cible vidéo présente est en mode théâtre. Lorsque la cible vidéo présente est en mode théâtre, elle correspond à deux connecteurs d’écran physiques ; un connecteur affiche la mémoire tampon d’image entière et l’autre n’affiche qu’une partie de la mémoire tampon d’image. Le mode Théâtre est également appelé mode miroir. Pour obtenir un diagramme montrant comment le pilote miniport d’affichage implémente généralement le mode théâtre, consultez la section Remarques. Le pilote miniport d’affichage informe le système d’exploitation de la façon dont la mémoire tampon d’image correspond à un moniteur particulier. La mémoire tampon d’images entière s’affiche sur un moniteur, et seule une partie de la mémoire tampon d’image s’affiche sur l’autre moniteur. |
Cette fonction peut également retourner d’autres codes d’erreur définis dans Ntstatus.h.
Remarques
La figure suivante montre comment le pilote miniport d’affichage implémente généralement le mode d’étendue.
L’illustration suivante montre comment le pilote miniport d’affichage implémente généralement le mode théâtre. *DxgkDdiOPMCreateProtectedOutput* doit être mis en page.Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | dispmprt.h (inclure Dispmprt.h) |
IRQL | PASSIVE_LEVEL (voir la section Remarques) |
Voir aussi
DXGKMDT_OPM_VIDEO_OUTPUT_SEMANTICS
DxgkDdiOPMConfigureProtectedOutput
DxgkDdiOPMDestroyProtectedOutput