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

> Gets the family of input devices that the device belongs to.

Gets the family of input devices that the device belongs to.

## Syntax

```cpp theme={null}
GameInputDeviceFamily GetDeviceFamily();
```

### Parameters

This method has no parameters.

### Return value

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

The family of the input device, such as `GameInputFamilyXboxOne`, `GameInputFamilyHid`, or `GameInputFamilyAggregate`. Returns `GameInputFamilyUnknown` if the family can't be determined.

## Remarks

The device family identifies the driver or protocol through which GameInput communicates with the device. It doesn't describe the kinds of input that the device provides. To determine that, use [IGameInputDevice::GetSupportedInput](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md).

Aggregate devices created with [IGameInput::CreateAggregateDevice](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinput/methods/igameinput_createaggregatedevice.md) report `GameInputFamilyAggregate`.

The device family doesn't change for the lifetime of the device object.

In GameInput v3 and earlier, this information was available from the `deviceFamily` 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)\
[GameInputDeviceFamily](https://docs.xbox.com/reference/input/gameinput/enums/gameinputdevicefamily.md)\
[IGameInputDevice::GetSupportedInput](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md)

## Version History

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


## Related topics

- [GameInputDeviceFamily](https://docs.xbox.com/reference/input/gameinput/enums/gameinputdevicefamily.md)
- [IGameInputDevice::GetDeviceId](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getdeviceid.md)
- [IGameInputDevice::GetXInputDeviceIndex](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getxinputdeviceindex.md)
- [IGameInputDevice (Interface contents)](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)
- [IGameInputDevice::GetDeviceRootId](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getdevicerootid.md)
