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

> Retrieves the racing wheel properties of the device, such as its control labels, pedals, shifter, and maximum wheel angle.

Retrieves the racing wheel properties of the device, such as its control labels, pedals, shifter, and maximum wheel angle.

## Syntax

```cpp theme={null}
bool GetRacingWheelInfo(
    GameInputRacingWheelInfo* info
);
```

### Parameters

*info*   \_Out\_\
Type: [GameInputRacingWheelInfo](https://docs.xbox.com/reference/input/gameinput/structs/gameinputracingwheelinfo.md)\*

Pointer to a `GameInputRacingWheelInfo` structure that receives the racing wheel properties of the device. If the device doesn't support racing wheel input, every member of the structure is set to zero.

### Return value

Type: bool

`true` if the device supports racing wheel input and *info* was filled in; otherwise, `false`.

## Remarks

The `GetRacingWheelInfo` method copies the racing wheel properties of the device into the caller-provided structure. A device supports racing wheel input when the value returned by [GetSupportedInput](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md) includes `GameInputKindRacingWheel`. If the device doesn't support racing wheel input, `GetRacingWheelInfo` zero-initializes *info* and returns `false`.

The `hasClutch`, `hasHandbrake`, and `hasPatternShifter` members report which optional controls are present, `minPatternShifterGear` and `maxPatternShifterGear` give the gear range of the pattern shifter, and `maxWheelAngle` gives the maximum rotation of the wheel. The label members describe the markings printed on the corresponding controls, as [GameInputLabel](https://docs.xbox.com/reference/input/gameinput/enums/gameinputlabel.md) values, so you can show matching prompts in your UI. The `extraButtonCount` and `extraAxisCount` members report how many controller buttons and axes the device has beyond the standard racing wheel mapping; use [GetExtraButtonIndexes](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextrabuttonindexes.md) and [GetExtraAxisIndexes](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextraaxisindexes.md) to locate them in the controller state of a reading. Racing wheel state is read from readings by using [IGameInputReading::GetRacingWheelState](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getracingwheelstate.md).

The properties returned by this method are fixed for the lifetime of the device, so you can query them once (for example, when the device connects) and cache the result.

The following example shows how to query the racing wheel properties of a device.

```cpp theme={null}
GameInputRacingWheelInfo info;
if (device->GetRacingWheelInfo(&info))
{
    if (info.hasClutch)
    {
        // Enable manual clutch controls.
    }
}
```

In GameInput v3 and earlier, this information was available from the `racingWheelInfo` 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)\
[GameInputRacingWheelInfo](https://docs.xbox.com/reference/input/gameinput/structs/gameinputracingwheelinfo.md)\
[GetSupportedInput](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md)\
[GameInputKind](https://docs.xbox.com/reference/input/gameinput/enums/gameinputkind.md)\
[GameInputLabel](https://docs.xbox.com/reference/input/gameinput/enums/gameinputlabel.md)\
[IGameInputReading::GetRacingWheelState](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getracingwheelstate.md)\
[IGameInputDevice](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)

## Version History

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


## Related topics

- [GameInputRacingWheelInfo](https://docs.xbox.com/reference/input/gameinput/structs/gameinputracingwheelinfo.md)
- [IGameInputDevice::GetMouseInfo](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getmouseinfo.md)
- [IGameInputDevice::GetInputReportInfo](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getinputreportinfo.md)
- [IGameInputDevice::GetKeyboardInfo](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getkeyboardinfo.md)
- [IGameInputDevice::GetSensorsInfo](https://docs.xbox.com/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsensorsinfo.md)
