pub fn get_capabilities(
user_index: impl TryInto<u32>,
flags: Flag,
) -> Result<Capabilities, Error>Expand description
[microsoft.com] XInputGetCapabilities
§Arguments
user_index— The controller to get capabilities and features for (0 .. xuser::MAX_COUNT.)flags—Flag::NoneorFlag::Gamepad.
§Example
let caps = xinput::get_capabilities(0, xinput::Flag::None);
println!("{caps:#?}");§Output
Ok(
Capabilities {
ty: DevType::Gamepad,
sub_type: DevSubType::Gamepad,
flags: Caps::None,
gamepad: Gamepad {
buttons: Buttons::{DPadUp|DPadDown|DPadLeft|DPadRight|Start|Back|LeftThumb|RightThumb|LeftShoulder|RightShoulder|A|B|X|Y},
left_trigger: 255,
right_trigger: 255,
left_thumb_x: -64,
left_thumb_y: -64,
right_thumb_x: -64,
right_thumb_y: -64,
},
vibration: Vibration {
left_motor_speed: 255,
right_motor_speed: 255,
},
},
)§Errors
- error::BAD_ARGUMENTS - Invalid
Flag - error::BAD_ARGUMENTS - Invalid
user_index(expected0 .. xuser::MAX_COUNT) - error::DEVICE_NOT_CONNECTED -
Flag::None - error::DEVICE_NOT_CONNECTED - No gamepad connected for
user_index. - error::INVALID_FUNCTION - API unavailable: XInput not loaded