> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# IGameInputDevice::GetInputReportInfo

> Recupera as descrições dos relatórios de entrada brutos que o dispositivo define.

Recupera as descrições dos relatórios de entrada brutos que o dispositivo define.

## Sintaxe

```cpp theme={null}
uint32_t GetInputReportInfo(
    uint32_t infoArrayCount,
    GameInputRawDeviceReportInfo* infoArray
);
```

### Parâmetros

*infoArrayCount*   \_In\_\
Tipo: uint32\_t

Número de elementos em *infoArray*. Para recuperar todos os relatórios de entrada, passe o valor retornado por [GetInputReportCount](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getinputreportcount.md).

*infoArray*   \_Out\_writes\_to\_opt\_(infoArrayCount, return)\
Tipo: [GameInputRawDeviceReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputrawdevicereportinfo.md)\*

Ponteiro para uma matriz que recebe uma estrutura por relatório de entrada. Pode ser `nullptr`; nesse caso, nada é gravado e o método retorna 0.

### Valor retornado

Tipo: uint32\_t

O número de elementos gravados em *infoArray*. Esse é o menor valor entre *infoArrayCount* e o número de relatórios de entrada no dispositivo, ou 0 se *infoArray* for `nullptr` ou se o dispositivo não tiver relatórios de entrada.

## Comentários

Cada elemento é uma estrutura [GameInputRawDeviceReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputrawdevicereportinfo.md) cujo membro `kind` é `GameInputRawInputReport`, cujo membro `id` é o ID do relatório definido pelo dispositivo e cujo membro `size` é o tamanho dos dados do relatório em bytes.

Chame [GetInputReportCount](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getinputreportcount.md) para obter o número de relatórios de entrada, aloque uma matriz desse tamanho e, em seguida, chame `GetInputReportInfo` para preenchê-la. Se *infoArrayCount* for menor que o número de relatórios de entrada, somente os primeiros *infoArrayCount* elementos serão gravados. Os relatórios de entrada de um dispositivo não mudam enquanto o dispositivo está conectado, portanto você pode consultá-los uma vez e armazenar o resultado em cache.

O membro `id` de cada elemento corresponde ao ID do relatório retornado por [IGameInputRawDeviceReport::GetReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputrawdevicereport/methods/igameinputrawdevicereport_getreportinfo.md) para os relatórios brutos que [IGameInputReading::GetRawReport](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getrawreport.md) retorna das leituras deste dispositivo.

O exemplo a seguir mostra como recuperar os relatórios de entrada de um dispositivo.

```cpp theme={null}
uint32_t reportCount = device->GetInputReportCount();
std::vector<GameInputRawDeviceReportInfo> reports(reportCount);
reports.resize(device->GetInputReportInfo(reportCount, reports.data()));

for (const GameInputRawDeviceReportInfo& report : reports)
{
    // report.id identifies an input report that can arrive in readings;
    // report.size is the size of its data in bytes.
}
```

No GameInput v3 e anteriores, essas informações estavam disponíveis no membro `inputReportInfo` da estrutura [GameInputDeviceInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/deprecated/structs/gameinputdeviceinfo.md) retornada por [IGameInputDevice::GetDeviceInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/deprecated/interfaces/igameinputdevice/methods/igameinputdevice_getdeviceinfo.md).

## Requisitos

**Cabeçalho:** GameInput.h

**Biblioteca:** gameinput.lib

**Plataformas com suporte:** Windows, consoles da família XBOX One e consoles XBOX Series

## Confira também

[Visão geral do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/overviews/input-overview.md)\
[GetInputReportCount](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getinputreportcount.md)\
[GameInputRawDeviceReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputrawdevicereportinfo.md)\
[GameInputRawDeviceReportKind](https://docs.xbox.com/pt-BR/reference/input/gameinput/enums/gameinputrawdevicereportkind.md)\
[IGameInputRawDeviceReport](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputrawdevicereport/igameinputrawdevicereport.md)\
[IGameInputReading::GetRawReport](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getrawreport.md)\
[Tópicos avançados do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/advanced/input-advanced-topics.md)\
[IGameInputDevice](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)

## Histórico de versões

| Versão | Alterações |
| - | - |
| **v4** | Introduzido. |


## Related topics

- [GameInputRawDeviceReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputrawdevicereportinfo.md)
- [IGameInputDevice::GetInputReportCount](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getinputreportcount.md)
- [IGameInputDevice (conteúdo da interface)](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)
- [IGameInputDevice::GetFeatureReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getfeaturereportinfo.md)
- [IGameInputDevice::GetOutputReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getoutputreportinfo.md)
