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

# IGameInput::CreateAggregateDevice

> IGameInput::CreateAggregateDevice

# IGameInput::CreateAggregateDevice

Cria uma instância virtual de [IGameInputDevice](/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice) que agrega todas as entradas do [GameInputKind](/pt-BR/reference/input/gameinput/enums/gameinputkind) especificado.

## Sintaxe

```cpp theme={null}
HRESULT CreateAggregateDevice(
         GameInputKind inputKind,
         APP_LOCAL_DEVICE_ID* deviceId
)
```

### Parâmetros

*inputKind*   \_In\_\
Tipo: [GameInputKind](/pt-BR/reference/input/gameinput/enums/gameinputkind)

O tipo de entrada para o qual o [IGameInputDevice](/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice) virtual retornado agregará leituras.

*deviceId*   \_Out\_\
Tipo: APP\_LOCAL\_DEVICE\_ID\*

O identificador de dispositivo resultante para o dispositivo agregado.

### Valor retornado

Tipo: HRESULT

Resultado da função. Uma falha é retornada quando um [GameInputKind](/pt-BR/reference/input/gameinput/enums/gameinputkind) sem suporte é usado ou ao tentar combinar sinalizadores de [GameInputKind](/pt-BR/reference/input/gameinput/enums/gameinputkind).

## Comentários

O tipo de entrada usado para CreateAggregateDevice deve ser um único valor da enumeração [GameInputKind](/pt-BR/reference/input/gameinput/enums/gameinputkind). Não há suporte para combinar sinalizadores de [GameInputKind](/pt-BR/reference/input/gameinput/enums/gameinputkind). Se um aplicativo precisar de entrada agregada para vários tipos de entrada, ele deverá criar uma instância virtual de [IGameInputDevice](/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice) para cada um.

<Note>Essa função é usada para reabilitar um dispositivo agregado que possa ter sido desabilitado chamando [DisableAggregateDevice](/pt-BR/reference/input/gameinput/interfaces/igameinput/methods/igameinput_disableaggregatedevice). Ela faz com que o dispositivo seja reabilitado, em vez de criar outra instância.</Note>

O dispositivo agregado também emitirá notificações de status por meio do retorno de chamada registrado ao chamar [RegisterDeviceCallback](/pt-BR/reference/input/gameinput/interfaces/igameinput/methods/igameinput_registerdevicecallback).

A agregação tem suporte apenas para os seguintes tipos de entrada:

* GameInputKindKeyboard
* GameInputKindMouse
* GameInputKindArcadeStick
* GameInputKindFlightStick
* GameInputKindGamepad
* GameInputKindRacingWheel

## Requisitos

**Cabeçalho:** GameInput.h

[Visão geral da API de entrada](/pt-BR/build/core-features/common/input/overviews/input-overview)\
[IGameInput](/pt-BR/reference/input/gameinput/interfaces/igameinput/igameinput)

## Histórico de versões

| Versão | Alterações |
| - | - |
| **v3** | Implementado (anteriormente E\_NOTIMPL na v0) e reintroduzido. Assinatura alterada: `IGameInputDevice**` substituído por `APP_LOCAL_DEVICE_ID*`. |
| **v1** | Removido. |
| **v0** | Introduzido, mas não implementado. |


## Related topics

- [IGameInput::CreateAggregateDevice](/reference/input/gameinput/interfaces/igameinput/methods/igameinput_createaggregatedevice.md)
- [IGameInput::DisableAggregateDevice](/reference/input/gameinput/interfaces/igameinput/methods/igameinput_disableaggregatedevice.md)
- [IGameInputDevice::CreateRawDeviceReport](/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_createrawdevicereport.md)
- [IGameInput::CreateDispatcher](/reference/input/gameinput/interfaces/igameinput/methods/igameinput_createdispatcher.md)
