Sintaxe
Parâmetros
Token _In_Tipo: D3D12XBOX_FRAME_PIPELINE_TOKEN Token de pipeline que identifica o quadro de interesse. TypeSet _In_ Tipo: D3D12XBOX_FRAME_STATISTICS_TYPE Combinação de sinalizadores de tipo que identificam as estatísticas a serem recuperadas. pCount _Inout_ Tipo: UINT* Ponteiro para um valor que especifica o tamanho, em entradas, da lista pStatistics. No retorno, o valor é atualizado para conter o número de entradas gravadas na lista. pStatistics _Out_
Tipo: D3D12XBOX_FRAME_STATISTICS* Ponteiro para o primeiro elemento de uma matriz de estatísticas de quadro. No retorno, as estatísticas consultadas dos tipos especificados serão gravadas na matriz.
Valor retornado
Tipo: HRESULT Código de êxito ou de erro HRESULT. Retorna S_OK se um ou mais conjuntos de estatísticas dos tipos solicitados estiverem disponíveis (e forem retornados, de acordo com o espaço na lista). Retorna S_FALSE se nenhuma das estatísticas solicitadas estiver disponível ainda. Retorna E_INVALIDARG para tokens de pipeline de quadro desconhecidos, conjuntos de tipos inválidos e organizações de lista inválidas.Comentários
Embora as estatísticas possam ser consultadas para qualquer token de pipeline de quadro válido, o runtime atualmente mantém um limite de histórico dos últimos 17 quadros. Qualquer quadro originado há mais de 17 intervalos não terá estatísticas disponíveis, e as estatísticas consultadas sobre ele retornarão S_FALSE. Os tipos solicitados também não retornarão estatísticas se os eventos de quadro associados ainda não tiverem ocorrido e, portanto, as estatísticas não estiverem disponíveis. (Um exemplo de evento de quadro associado é uma consulta que inclui a especificação de D3D12XBOX_FRAME_STATISTICS_TYPE_DISPLAY antes que o quadro tenha sido de fato invertido para a tela.) Uma consulta de estatísticas pode retornar mais de uma entrada por tipo incluído no conjunto solicitado. Exemplos de várias estatísticas incluem:- PRESENT, RENDER e DISPLAY quando um quadro aparece em vários planos de exibição
- FRAME_EVENT DISPLAY_VBLANK quando vários eventos VBlank ocorrem ao longo do quadro
- INPUT quando várias consultas de entrada são feitas em nome do quadro
- A origem e a consulta de entrada do gamepad para o quadro: FRAME_EVENT_STATISTICS::SignalTime e INPUT_STATISTICS::QueryTime
- A gravação final nos recursos de troca do quadro e a chamada para apresentá-los: RENDER_STATISTICS::FrameCompleteTime e PRESENT_STATISTICS::PresentCallTime
- A chamada PresentX e a inversão dos recursos para a tela: PRESENT_STATISTICS::PresentCallTime e DISPLAY_STATISTICS::FlipTime
