> ## 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.

# GameInputDeviceStatus

> GameInputDeviceStatus

# GameInputDeviceStatus

Enumeration of the states that an input device can be in.

## Syntax

```cpp theme={null}
enum GameInputDeviceStatus
{
    GameInputDeviceNoStatus        = 0x00000000,
    GameInputDeviceConnected       = 0x00000001,
    GameInputDeviceHapticInfoReady = 0x00200000,
    GameInputDeviceAnyStatus       = 0xFFFFFFFF
};
```

## Constants

| Constant                       | Description                                             |
| ------------------------------ | ------------------------------------------------------- |
| GameInputDeviceNoStatus        | Indicates that the device has no status.                |
| GameInputDeviceConnected       | Indicates that the device is connected.                 |
| GameInputDeviceHapticInfoReady | Indicates that the device haptics information is ready. |
| GameInputDeviceAnyStatus       | Will return true for any device status.                 |

## Remarks

These flag values may be combined as the user sees fit to filter on more than one device at a time. Returned by [iGameInputDevice\_GetDeviceStatus](/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getdevicestatus).

Applications can register to receive a callback when any of these states change, via the [IGameInput::RegisterDeviceCallback](/reference/input/gameinput/interfaces/igameinput/methods/igameinput_registerdevicecallback) method on the [IGameInput interface](/reference/input/gameinput/interfaces/igameinput/igameinput).

## Requirements

**Header:** GameInput.h

[Input API Overview](/build/core-features/common/input/overviews/input-overview)\
[GameInput](/reference/input/gameinput/gameinput_members)\
[IGameInput::RegisterDeviceCallback](/reference/input/gameinput/interfaces/igameinput/methods/igameinput_registerdevicecallback)

## Version History

| Version | Changes                                                                                                                                                                                                                                                                                                                                                                           |
| ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **v2**  | **Added** `GameInputDeviceHapticInfoReady` (0x00200000).                                                                                                                                                                                                                                                                                                                          |
| **v1**  | **Breaking change** — removed eight unused flags: `GameInputDeviceInputEnabled`, `GameInputDeviceOutputEnabled`, `GameInputDeviceRawIoEnabled`, `GameInputDeviceAudioCapture`, `GameInputDeviceAudioRender`, `GameInputDeviceSynchronized`, `GameInputDeviceWireless`, and `GameInputDeviceUserIdle`. `GameInputDeviceAnyStatus` value changed from `0x00FFFFFF` to `0xFFFFFFFF`. |
| **v0**  | Introduced.                                                                                                                                                                                                                                                                                                                                                                       |

## Appendix: Previous versions

### v0

```cpp theme={null}
enum GameInputDeviceStatus
{
    GameInputDeviceNoStatus       = 0x00000000,
    GameInputDeviceConnected      = 0x00000001,
    GameInputDeviceInputEnabled   = 0x00000002,
    GameInputDeviceOutputEnabled  = 0x00000004,
    GameInputDeviceRawIoEnabled   = 0x00000008,
    GameInputDeviceAudioCapture   = 0x00000010,
    GameInputDeviceAudioRender    = 0x00000020,
    GameInputDeviceSynchronized   = 0x00000040,
    GameInputDeviceWireless       = 0x00000080,
    GameInputDeviceUserIdle       = 0x00100000,
    GameInputDeviceAnyStatus      = 0x00FFFFFF
};
```

### v1

```cpp theme={null}
enum GameInputDeviceStatus
{
    GameInputDeviceNoStatus   = 0x00000000,
    GameInputDeviceConnected  = 0x00000001,
    GameInputDeviceAnyStatus  = 0xFFFFFFFF
};
```


## Related topics

- [GetDeviceStatus](/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getdevicestatus.md)
- [GameInputDeviceCallback](/reference/input/gameinput/functions/gameinputdevicecallback.md)
- [GetHapticInfo](/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_gethapticinfo.md)
- [IGameInput::RegisterDeviceCallback](/reference/input/gameinput/interfaces/igameinput/methods/igameinput_registerdevicecallback.md)
- [GameInput](/reference/input/gameinput/gameinput_members.md)
