语法
参数
infoArrayCount _In_类型:uint32_t infoArray 中的元素数量。若要检索所有控制器开关,请传递 GetControllerSwitchCount 返回的值。 infoArray _Out_writes_to_opt_(infoArrayCount, return)
类型:GameInputControllerSwitchInfo* 指向数组的指针,该数组为每个控制器开关接收一个结构。可以为
nullptr,在这种情况下不会写入任何内容,并且方法返回 0。
返回值
类型:uint32_t 写入 infoArray 的元素数量。该值为 infoArrayCount 与设备上控制器开关数量中的较小者;如果 infoArray 为nullptr 或设备没有控制器开关,则为 0。
备注
每个元素都是一个 GameInputControllerSwitchInfo 结构,用于描述相应开关的类型(2 向、4 向或 8 向,以 GameInputSwitchKind 值表示)及其每个位置的标签。 调用 GetControllerSwitchCount 获取控制器开关的数量,分配该大小的数组,然后调用GetControllerSwitchInfo 填充该数组。如果 infoArrayCount 小于控制器开关的数量,则只写入前 infoArrayCount 个元素。在设备保持连接期间,设备的控制器开关不会更改,因此你可以只查询一次并缓存结果。
信息数组的元素 i 描述的是,对于来自此设备的读数,IGameInputReading::GetControllerSwitchState 返回的数组中索引 i 处的开关。
以下示例演示如何检索设备的控制器开关。
controllerSwitchInfo 成员中获取,该结构由 IGameInputDevice::GetDeviceInfo 返回的 GameInputDeviceInfo 结构的 controllerInfo 成员引用。
要求
头文件: GameInput.h 库: gameinput.lib 支持的平台: Windows、XBOX One 系列主机和 XBOX Series 主机另请参阅
GameInput 概述GetControllerSwitchCount
GameInputControllerSwitchInfo
GameInputSwitchKind
IGameInputReading::GetControllerSwitchState
IGameInputDevice
