Syntaxe
Paramètres
Token _In_Type : D3D12XBOX_FRAME_PIPELINE_TOKEN Jeton de pipeline qui identifie l’image visée. TypeSet _In_ Type : D3D12XBOX_FRAME_STATISTICS_TYPE Combinaison d’indicateurs de type qui identifient les statistiques à récupérer. pCount _Inout_ Type : UINT* Pointeur vers une valeur qui spécifie la taille, en entrées, de la liste pStatistics. Au retour, la valeur est mise à jour pour contenir le nombre d’entrées écrites dans la liste. pStatistics _Out_
Type : D3D12XBOX_FRAME_STATISTICS* Pointeur vers le premier élément d’un tableau de statistiques d’image. Au retour, les statistiques interrogées des types spécifiés seront écrites dans le tableau.
Valeur de retour
Type : HRESULT Code de réussite ou d’erreur HRESULT. Retourne S_OK si un ou plusieurs ensembles de statistiques des types demandés sont disponibles (et retournés, selon l’espace disponible dans la liste). Retourne S_FALSE si aucune des statistiques demandées n’est encore disponible. Retourne E_INVALIDARG pour les jetons de pipeline d’image inconnus, les ensembles de types non valides et les dispositions de liste non valides.Remarques
Bien que les statistiques puissent être interrogées pour tout jeton de pipeline d’image valide, le runtime conserve actuellement un historique limité aux 17 dernières images. Toute image dont l’origine remonte à plus de 17 intervalles dans le passé n’aura aucune statistique disponible, et les statistiques interrogées pour celle-ci retourneront S_FALSE. Les types demandés ne retourneront également aucune statistique si les événements d’image qui leur sont associés ne se sont pas encore produits et que les statistiques ne sont donc pas disponibles. (Un exemple d’événement d’image associé est une requête qui inclut la spécification de D3D12XBOX_FRAME_STATISTICS_TYPE_DISPLAY avant que l’image ait réellement été basculée vers l’affichage.) Une requête de statistiques peut retourner plus d’une entrée par type inclus dans l’ensemble demandé. Voici des exemples de statistiques multiples :- PRESENT, RENDER et DISPLAY lorsqu’une image apparaît sur plusieurs plans d’affichage
- FRAME_EVENT DISPLAY_VBLANK lorsque plusieurs événements VBlank se produisent au cours de l’image
- INPUT lorsque plusieurs requêtes d’entrée sont effectuées pour le compte de l’image
- L’origine et la requête d’entrée de la manette pour l’image : FRAME_EVENT_STATISTICS::SignalTime et INPUT_STATISTICS::QueryTime
- L’écriture finale dans les ressources d’échange de l’image et l’appel pour les présenter : RENDER_STATISTICS::FrameCompleteTime et PRESENT_STATISTICS::PresentCallTime
- L’appel PresentX et le basculement des ressources vers l’affichage : PRESENT_STATISTICS::PresentCallTime et DISPLAY_STATISTICS::FlipTime
