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

> 检索设备的传感器属性，例如设备具有哪些运动传感器和方向传感器。

检索设备的传感器属性，例如设备具有哪些运动传感器和方向传感器。

## 语法

```cpp theme={null}
bool GetSensorsInfo(
    GameInputSensorsInfo* info
);
```

### 参数

*info*   \_Out\_\
类型：[GameInputSensorsInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/structs/gameinputsensorsinfo.md)\*

指向 `GameInputSensorsInfo` 结构的指针，该结构接收设备的传感器属性。如果设备不支持传感器输入，则该结构的每个成员都设置为零。

### 返回值

类型：bool

如果设备支持传感器输入并且已填充 *info*，则为 `true`；否则为 `false`。

## 备注

`GetSensorsInfo` 方法将设备的传感器属性复制到调用方提供的结构中。当 [GetSupportedInput](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md) 返回的值包含 `GameInputKindSensors` 时，设备支持传感器输入。如果设备不支持传感器输入，`GetSensorsInfo` 会将 *info* 零初始化并返回 `false`。

`supportedSensors` 成员是 [GameInputSensorsKind](https://docs.xbox.com/zh-CN/reference/input/gameinput/enums/gameinputsensorskind.md) 标志的组合，用于标识设备上的传感器。传感器状态通过 [IGameInputReading::GetSensorsState](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getsensorsstate.md) 从读数中读取。

此方法返回的属性在设备的生存期内是固定的，因此你可以只查询一次（例如在设备连接时）并缓存结果。

以下示例演示如何查询设备的传感器属性。

```cpp theme={null}
GameInputSensorsInfo info;
if (device->GetSensorsInfo(&info))
{
    if (info.supportedSensors & GameInputSensorsGyrometer)
    {
        // Enable gyro aiming.
    }
}
```

在 GameInput v3 及更早版本中，此信息可从 [IGameInputDevice::GetDeviceInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/deprecated/interfaces/igameinputdevice/methods/igameinputdevice_getdeviceinfo.md) 返回的 [GameInputDeviceInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/deprecated/structs/gameinputdeviceinfo.md) 结构的 `sensorsInfo` 成员中获取。

## 要求

**头文件：** GameInput.h

**库：** gameinput.lib

**支持的平台：** Windows、XBOX One 系列主机和 XBOX Series 主机

## 另请参阅

[GameInput 概述](https://docs.xbox.com/zh-CN/build/core-features/common/input/overviews/input-overview.md)\
[GameInputSensorsInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/structs/gameinputsensorsinfo.md)\
[GetSupportedInput](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getsupportedinput.md)\
[GameInputKind](https://docs.xbox.com/zh-CN/reference/input/gameinput/enums/gameinputkind.md)\
[GameInputSensorsKind](https://docs.xbox.com/zh-CN/reference/input/gameinput/enums/gameinputsensorskind.md)\
[IGameInputReading::GetSensorsState](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputreading/methods/igameinputreading_getsensorsstate.md)\
[IGameInputDevice](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)

## 版本历史

| 版本 | 变更 |
| - | - |
| **v4** | 引入。 |


## Related topics

- [GameInputSensorsInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/structs/gameinputsensorsinfo.md)
- [GameInputSensorsKind](https://docs.xbox.com/zh-CN/reference/input/gameinput/enums/gameinputsensorskind.md)
- [IGameInputDevice::GetInputReportInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getinputreportinfo.md)
- [IGameInputDevice::GetKeyboardInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getkeyboardinfo.md)
- [IGameInputDevice::GetGamepadInfo](https://docs.xbox.com/zh-CN/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getgamepadinfo.md)
