> ## 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::GetGamepadInfo

> Recupera as propriedades de gamepad do dispositivo, como o layout de botões com suporte e os rótulos dos controles.

Recupera as propriedades de gamepad do dispositivo, como o layout de botões com suporte e os rótulos dos controles.

## Sintaxe

```cpp theme={null}
bool GetGamepadInfo(
    GameInputGamepadInfo* info
);
```

### Parâmetros

*info*   \_Out\_\
Tipo: [GameInputGamepadInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputgamepadinfo.md)\*

Ponteiro para uma estrutura `GameInputGamepadInfo` que recebe as propriedades de gamepad do dispositivo. Se o dispositivo não oferecer suporte à entrada de gamepad, todos os membros da estrutura serão definidos como zero.

### Valor retornado

Tipo: bool

`true` se o dispositivo oferecer suporte à entrada de gamepad e *info* tiver sido preenchido; caso contrário, `false`.

## Comentários

O método `GetGamepadInfo` copia as propriedades de gamepad do dispositivo para a estrutura fornecida pelo chamador. Um dispositivo oferece suporte à entrada de gamepad quando o valor retornado por [GetSupportedInput](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md) inclui `GameInputKindGamepad`. Se o dispositivo não oferecer suporte à entrada de gamepad, `GetGamepadInfo` inicializará *info* com zeros e retornará `false`.

O membro `supportedLayout` é uma combinação de sinalizadores [GameInputGamepadButtons](https://docs.xbox.com/pt-BR/reference/input/gameinput/enums/gameinputgamepadbuttons.md) que identifica quais botões padrão de gamepad o dispositivo tem. Os membros de rótulo descrevem as marcações impressas nos controles correspondentes, como valores [GameInputLabel](https://docs.xbox.com/pt-BR/reference/input/gameinput/enums/gameinputlabel.md), para que você possa mostrar prompts correspondentes na sua interface do usuário. Os membros `extraButtonCount` e `extraAxisCount` relatam quantos botões e eixos de controle o dispositivo tem além do mapeamento padrão de gamepad; use [GetExtraButtonIndexes](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextrabuttonindexes.md) e [GetExtraAxisIndexes](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextraaxisindexes.md) para localizá-los no estado do controle de uma leitura. O estado do gamepad é lido das leituras por meio de [IGameInputReading::GetGamepadState](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getgamepadstate.md).

As propriedades retornadas por este método são fixas durante o tempo de vida do dispositivo, portanto você pode consultá-las uma vez (por exemplo, quando o dispositivo se conecta) e armazenar o resultado em cache.

O exemplo a seguir mostra como consultar as propriedades de gamepad de um dispositivo.

```cpp theme={null}
GameInputGamepadInfo info;
if (device->GetGamepadInfo(&info))
{
    if (info.aButtonLabel == GameInputLabelXboxA)
    {
        // Show XBOX-style button prompts.
    }
}
```

No GameInput v3 e anteriores, essas informações estavam disponíveis no membro `gamepadInfo` 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)\
[GameInputGamepadInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputgamepadinfo.md)\
[GetSupportedInput](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md)\
[GameInputKind](https://docs.xbox.com/pt-BR/reference/input/gameinput/enums/gameinputkind.md)\
[GameInputGamepadButtons](https://docs.xbox.com/pt-BR/reference/input/gameinput/enums/gameinputgamepadbuttons.md)\
[GameInputLabel](https://docs.xbox.com/pt-BR/reference/input/gameinput/enums/gameinputlabel.md)\
[IGameInputReading::GetGamepadState](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getgamepadstate.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

- [GameInputGamepadInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/structs/gameinputgamepadinfo.md)
- [IGameInputDevice::GetSupportedInput](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md)
- [IGameInputDevice::GetUsage](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getusage.md)
- [IGameInputDevice::GetInputReportInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getinputreportinfo.md)
- [IGameInputDevice::GetKeyboardInfo](https://docs.xbox.com/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getkeyboardinfo.md)
