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

> Gets the kinds of input that the input device supports.

Gets the kinds of input that the input device supports.

## Syntax

```cpp theme={null}
GameInputKind GetSupportedInput();
```

### Parameters

This method has no parameters.

### Return value

Type: [GameInputKind](https://docs.xbox.com/reference/input/gameinput/enums/gameinputkind.md)

A combination of `GameInputKind` flags that describes every kind of input the device supports. Returns `GameInputKindUnknown` if the device doesn't support any known kind of input.

## Remarks

The returned flags describe the device as a whole. An individual reading from the device contains only some of these kinds; use [IGameInputReading::GetInputKind](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getinputkind.md) to find out which kinds of input a specific reading contains.

A supported input kind usually means that the corresponding info method on the device returns data. For example, if the returned value includes `GameInputKindGamepad`, [IGameInputDevice::GetGamepadInfo](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getgamepadinfo.md) returns `true`. Similarly, `GameInputKindTouch` indicates that [IGameInputDevice::GetTouchSurfaceCount](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_gettouchsurfacecount.md) returns a nonzero value.

`GameInputKindLighting` is an output-only kind. It indicates that the device has lamps that you can control by using [IGameInputDevice::SetLightingColor](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_setlightingcolor.md); readings never contain lighting data.

The following example checks whether a device can be used as a gamepad.

```cpp theme={null}
bool IsGamepad(IGameInputDevice* device) noexcept
{
    return (device->GetSupportedInput() & GameInputKindGamepad) != 0;
}
```

The set of supported input kinds doesn't change for the lifetime of the device object.

In GameInput v3 and earlier, this information was available from the `supportedInput` member of the [GameInputDeviceInfo](https://docs.xbox.com/reference/input/gameinput/deprecated/structs/gameinputdeviceinfo.md) structure returned by [IGameInputDevice::GetDeviceInfo](https://docs.xbox.com/reference/input/gameinput/deprecated/interfaces/igameinputdevice/methods/igameinputdevice_getdeviceinfo.md).

## Requirements

**Header:** GameInput.h

**Library:** gameinput.lib

**Supported platforms:** Windows, XBOX One family consoles and XBOX Series consoles

## See also

[Overview of GameInput](https://docs.xbox.com/build/core-features/common/input/overviews/input-overview.md)\
[IGameInputDevice](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)\
[GameInputKind](https://docs.xbox.com/reference/input/gameinput/enums/gameinputkind.md)\
[IGameInputReading::GetInputKind](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getinputkind.md)

## Version History

| Version | Changes |
| - | - |
| **v4** | Introduced. |


## Related topics

- [IGameInputDevice::GetDeviceFamily](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getdevicefamily.md)
- [IGameInputDevice::GetUsage](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getusage.md)
- [IGameInputDevice::GetSupportedLightingGroups](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedlightinggroups.md)
- [IGameInputDevice::GetTouchSurfaceCount](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_gettouchsurfacecount.md)
- [GameInputKind](https://docs.xbox.com/reference/input/gameinput/enums/gameinputkind.md)
