summaryrefslogtreecommitdiffstats
path: root/vendor/windows-sys/src/Windows/Gaming
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
commit698f8c2f01ea549d77d7dc3338a12e04c11057b9 (patch)
tree173a775858bd501c378080a10dca74132f05bc50 /vendor/windows-sys/src/Windows/Gaming
parentInitial commit. (diff)
downloadrustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.tar.xz
rustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.zip
Adding upstream version 1.64.0+dfsg1.upstream/1.64.0+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/windows-sys/src/Windows/Gaming')
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/Input/Custom/mod.rs99
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/Input/ForceFeedback/mod.rs81
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/Input/Preview/mod.rs1
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/Input/mod.rs367
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/Preview/GamesEnumeration/mod.rs35
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/Preview/mod.rs2
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/UI/mod.rs36
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/XboxLive/Storage/mod.rs37
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/XboxLive/mod.rs2
-rw-r--r--vendor/windows-sys/src/Windows/Gaming/mod.rs8
10 files changed, 668 insertions, 0 deletions
diff --git a/vendor/windows-sys/src/Windows/Gaming/Input/Custom/mod.rs b/vendor/windows-sys/src/Windows/Gaming/Input/Custom/mod.rs
new file mode 100644
index 000000000..ee5b87504
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/Input/Custom/mod.rs
@@ -0,0 +1,99 @@
+#[repr(C)]
+#[doc = "*Required features: `\"Gaming_Input_Custom\"`*"]
+pub struct GameControllerVersionInfo {
+ pub Major: u16,
+ pub Minor: u16,
+ pub Build: u16,
+ pub Revision: u16,
+}
+impl ::core::marker::Copy for GameControllerVersionInfo {}
+impl ::core::clone::Clone for GameControllerVersionInfo {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Gaming_Input_Custom\"`*"]
+pub struct GipFirmwareUpdateProgress {
+ pub PercentCompleted: f64,
+ pub CurrentComponentId: u32,
+}
+impl ::core::marker::Copy for GipFirmwareUpdateProgress {}
+impl ::core::clone::Clone for GipFirmwareUpdateProgress {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type GipFirmwareUpdateResult = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input_Custom\"`*"]
+#[repr(transparent)]
+pub struct GipFirmwareUpdateStatus(pub i32);
+impl GipFirmwareUpdateStatus {
+ pub const Completed: Self = Self(0i32);
+ pub const UpToDate: Self = Self(1i32);
+ pub const Failed: Self = Self(2i32);
+}
+impl ::core::marker::Copy for GipFirmwareUpdateStatus {}
+impl ::core::clone::Clone for GipFirmwareUpdateStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type GipGameControllerProvider = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input_Custom\"`*"]
+#[repr(transparent)]
+pub struct GipMessageClass(pub i32);
+impl GipMessageClass {
+ pub const Command: Self = Self(0i32);
+ pub const LowLatency: Self = Self(1i32);
+ pub const StandardLatency: Self = Self(2i32);
+}
+impl ::core::marker::Copy for GipMessageClass {}
+impl ::core::clone::Clone for GipMessageClass {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type HidGameControllerProvider = *mut ::core::ffi::c_void;
+pub type ICustomGameControllerFactory = *mut ::core::ffi::c_void;
+pub type IGameControllerInputSink = *mut ::core::ffi::c_void;
+pub type IGameControllerProvider = *mut ::core::ffi::c_void;
+pub type IGipGameControllerInputSink = *mut ::core::ffi::c_void;
+pub type IHidGameControllerInputSink = *mut ::core::ffi::c_void;
+pub type IXusbGameControllerInputSink = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input_Custom\"`*"]
+#[repr(transparent)]
+pub struct XusbDeviceSubtype(pub i32);
+impl XusbDeviceSubtype {
+ pub const Unknown: Self = Self(0i32);
+ pub const Gamepad: Self = Self(1i32);
+ pub const ArcadePad: Self = Self(2i32);
+ pub const ArcadeStick: Self = Self(3i32);
+ pub const FlightStick: Self = Self(4i32);
+ pub const Wheel: Self = Self(5i32);
+ pub const Guitar: Self = Self(6i32);
+ pub const GuitarAlternate: Self = Self(7i32);
+ pub const GuitarBass: Self = Self(8i32);
+ pub const DrumKit: Self = Self(9i32);
+ pub const DancePad: Self = Self(10i32);
+}
+impl ::core::marker::Copy for XusbDeviceSubtype {}
+impl ::core::clone::Clone for XusbDeviceSubtype {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Gaming_Input_Custom\"`*"]
+#[repr(transparent)]
+pub struct XusbDeviceType(pub i32);
+impl XusbDeviceType {
+ pub const Unknown: Self = Self(0i32);
+ pub const Gamepad: Self = Self(1i32);
+}
+impl ::core::marker::Copy for XusbDeviceType {}
+impl ::core::clone::Clone for XusbDeviceType {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type XusbGameControllerProvider = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Gaming/Input/ForceFeedback/mod.rs b/vendor/windows-sys/src/Windows/Gaming/Input/ForceFeedback/mod.rs
new file mode 100644
index 000000000..7abdf14b0
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/Input/ForceFeedback/mod.rs
@@ -0,0 +1,81 @@
+pub type ConditionForceEffect = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
+#[repr(transparent)]
+pub struct ConditionForceEffectKind(pub i32);
+impl ConditionForceEffectKind {
+ pub const Spring: Self = Self(0i32);
+ pub const Damper: Self = Self(1i32);
+ pub const Inertia: Self = Self(2i32);
+ pub const Friction: Self = Self(3i32);
+}
+impl ::core::marker::Copy for ConditionForceEffectKind {}
+impl ::core::clone::Clone for ConditionForceEffectKind {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type ConstantForceEffect = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
+#[repr(transparent)]
+pub struct ForceFeedbackEffectAxes(pub u32);
+impl ForceFeedbackEffectAxes {
+ pub const None: Self = Self(0u32);
+ pub const X: Self = Self(1u32);
+ pub const Y: Self = Self(2u32);
+ pub const Z: Self = Self(4u32);
+}
+impl ::core::marker::Copy for ForceFeedbackEffectAxes {}
+impl ::core::clone::Clone for ForceFeedbackEffectAxes {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
+#[repr(transparent)]
+pub struct ForceFeedbackEffectState(pub i32);
+impl ForceFeedbackEffectState {
+ pub const Stopped: Self = Self(0i32);
+ pub const Running: Self = Self(1i32);
+ pub const Paused: Self = Self(2i32);
+ pub const Faulted: Self = Self(3i32);
+}
+impl ::core::marker::Copy for ForceFeedbackEffectState {}
+impl ::core::clone::Clone for ForceFeedbackEffectState {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
+#[repr(transparent)]
+pub struct ForceFeedbackLoadEffectResult(pub i32);
+impl ForceFeedbackLoadEffectResult {
+ pub const Succeeded: Self = Self(0i32);
+ pub const EffectStorageFull: Self = Self(1i32);
+ pub const EffectNotSupported: Self = Self(2i32);
+}
+impl ::core::marker::Copy for ForceFeedbackLoadEffectResult {}
+impl ::core::clone::Clone for ForceFeedbackLoadEffectResult {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type ForceFeedbackMotor = *mut ::core::ffi::c_void;
+pub type IForceFeedbackEffect = *mut ::core::ffi::c_void;
+pub type PeriodicForceEffect = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
+#[repr(transparent)]
+pub struct PeriodicForceEffectKind(pub i32);
+impl PeriodicForceEffectKind {
+ pub const SquareWave: Self = Self(0i32);
+ pub const SineWave: Self = Self(1i32);
+ pub const TriangleWave: Self = Self(2i32);
+ pub const SawtoothWaveUp: Self = Self(3i32);
+ pub const SawtoothWaveDown: Self = Self(4i32);
+}
+impl ::core::marker::Copy for PeriodicForceEffectKind {}
+impl ::core::clone::Clone for PeriodicForceEffectKind {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type RampForceEffect = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Gaming/Input/Preview/mod.rs b/vendor/windows-sys/src/Windows/Gaming/Input/Preview/mod.rs
new file mode 100644
index 000000000..8b1378917
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/Input/Preview/mod.rs
@@ -0,0 +1 @@
+
diff --git a/vendor/windows-sys/src/Windows/Gaming/Input/mod.rs b/vendor/windows-sys/src/Windows/Gaming/Input/mod.rs
new file mode 100644
index 000000000..e3d34e3d1
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/Input/mod.rs
@@ -0,0 +1,367 @@
+#[cfg(feature = "Gaming_Input_Custom")]
+pub mod Custom;
+#[cfg(feature = "Gaming_Input_ForceFeedback")]
+pub mod ForceFeedback;
+#[cfg(feature = "Gaming_Input_Preview")]
+pub mod Preview;
+pub type ArcadeStick = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct ArcadeStickButtons(pub u32);
+impl ArcadeStickButtons {
+ pub const None: Self = Self(0u32);
+ pub const StickUp: Self = Self(1u32);
+ pub const StickDown: Self = Self(2u32);
+ pub const StickLeft: Self = Self(4u32);
+ pub const StickRight: Self = Self(8u32);
+ pub const Action1: Self = Self(16u32);
+ pub const Action2: Self = Self(32u32);
+ pub const Action3: Self = Self(64u32);
+ pub const Action4: Self = Self(128u32);
+ pub const Action5: Self = Self(256u32);
+ pub const Action6: Self = Self(512u32);
+ pub const Special1: Self = Self(1024u32);
+ pub const Special2: Self = Self(2048u32);
+}
+impl ::core::marker::Copy for ArcadeStickButtons {}
+impl ::core::clone::Clone for ArcadeStickButtons {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+pub struct ArcadeStickReading {
+ pub Timestamp: u64,
+ pub Buttons: ArcadeStickButtons,
+}
+impl ::core::marker::Copy for ArcadeStickReading {}
+impl ::core::clone::Clone for ArcadeStickReading {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type FlightStick = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct FlightStickButtons(pub u32);
+impl FlightStickButtons {
+ pub const None: Self = Self(0u32);
+ pub const FirePrimary: Self = Self(1u32);
+ pub const FireSecondary: Self = Self(2u32);
+}
+impl ::core::marker::Copy for FlightStickButtons {}
+impl ::core::clone::Clone for FlightStickButtons {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+pub struct FlightStickReading {
+ pub Timestamp: u64,
+ pub Buttons: FlightStickButtons,
+ pub HatSwitch: GameControllerSwitchPosition,
+ pub Roll: f64,
+ pub Pitch: f64,
+ pub Yaw: f64,
+ pub Throttle: f64,
+}
+impl ::core::marker::Copy for FlightStickReading {}
+impl ::core::clone::Clone for FlightStickReading {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct GameControllerButtonLabel(pub i32);
+impl GameControllerButtonLabel {
+ pub const None: Self = Self(0i32);
+ pub const XboxBack: Self = Self(1i32);
+ pub const XboxStart: Self = Self(2i32);
+ pub const XboxMenu: Self = Self(3i32);
+ pub const XboxView: Self = Self(4i32);
+ pub const XboxUp: Self = Self(5i32);
+ pub const XboxDown: Self = Self(6i32);
+ pub const XboxLeft: Self = Self(7i32);
+ pub const XboxRight: Self = Self(8i32);
+ pub const XboxA: Self = Self(9i32);
+ pub const XboxB: Self = Self(10i32);
+ pub const XboxX: Self = Self(11i32);
+ pub const XboxY: Self = Self(12i32);
+ pub const XboxLeftBumper: Self = Self(13i32);
+ pub const XboxLeftTrigger: Self = Self(14i32);
+ pub const XboxLeftStickButton: Self = Self(15i32);
+ pub const XboxRightBumper: Self = Self(16i32);
+ pub const XboxRightTrigger: Self = Self(17i32);
+ pub const XboxRightStickButton: Self = Self(18i32);
+ pub const XboxPaddle1: Self = Self(19i32);
+ pub const XboxPaddle2: Self = Self(20i32);
+ pub const XboxPaddle3: Self = Self(21i32);
+ pub const XboxPaddle4: Self = Self(22i32);
+ pub const Mode: Self = Self(23i32);
+ pub const Select: Self = Self(24i32);
+ pub const Menu: Self = Self(25i32);
+ pub const View: Self = Self(26i32);
+ pub const Back: Self = Self(27i32);
+ pub const Start: Self = Self(28i32);
+ pub const Options: Self = Self(29i32);
+ pub const Share: Self = Self(30i32);
+ pub const Up: Self = Self(31i32);
+ pub const Down: Self = Self(32i32);
+ pub const Left: Self = Self(33i32);
+ pub const Right: Self = Self(34i32);
+ pub const LetterA: Self = Self(35i32);
+ pub const LetterB: Self = Self(36i32);
+ pub const LetterC: Self = Self(37i32);
+ pub const LetterL: Self = Self(38i32);
+ pub const LetterR: Self = Self(39i32);
+ pub const LetterX: Self = Self(40i32);
+ pub const LetterY: Self = Self(41i32);
+ pub const LetterZ: Self = Self(42i32);
+ pub const Cross: Self = Self(43i32);
+ pub const Circle: Self = Self(44i32);
+ pub const Square: Self = Self(45i32);
+ pub const Triangle: Self = Self(46i32);
+ pub const LeftBumper: Self = Self(47i32);
+ pub const LeftTrigger: Self = Self(48i32);
+ pub const LeftStickButton: Self = Self(49i32);
+ pub const Left1: Self = Self(50i32);
+ pub const Left2: Self = Self(51i32);
+ pub const Left3: Self = Self(52i32);
+ pub const RightBumper: Self = Self(53i32);
+ pub const RightTrigger: Self = Self(54i32);
+ pub const RightStickButton: Self = Self(55i32);
+ pub const Right1: Self = Self(56i32);
+ pub const Right2: Self = Self(57i32);
+ pub const Right3: Self = Self(58i32);
+ pub const Paddle1: Self = Self(59i32);
+ pub const Paddle2: Self = Self(60i32);
+ pub const Paddle3: Self = Self(61i32);
+ pub const Paddle4: Self = Self(62i32);
+ pub const Plus: Self = Self(63i32);
+ pub const Minus: Self = Self(64i32);
+ pub const DownLeftArrow: Self = Self(65i32);
+ pub const DialLeft: Self = Self(66i32);
+ pub const DialRight: Self = Self(67i32);
+ pub const Suspension: Self = Self(68i32);
+}
+impl ::core::marker::Copy for GameControllerButtonLabel {}
+impl ::core::clone::Clone for GameControllerButtonLabel {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct GameControllerSwitchKind(pub i32);
+impl GameControllerSwitchKind {
+ pub const TwoWay: Self = Self(0i32);
+ pub const FourWay: Self = Self(1i32);
+ pub const EightWay: Self = Self(2i32);
+}
+impl ::core::marker::Copy for GameControllerSwitchKind {}
+impl ::core::clone::Clone for GameControllerSwitchKind {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct GameControllerSwitchPosition(pub i32);
+impl GameControllerSwitchPosition {
+ pub const Center: Self = Self(0i32);
+ pub const Up: Self = Self(1i32);
+ pub const UpRight: Self = Self(2i32);
+ pub const Right: Self = Self(3i32);
+ pub const DownRight: Self = Self(4i32);
+ pub const Down: Self = Self(5i32);
+ pub const DownLeft: Self = Self(6i32);
+ pub const Left: Self = Self(7i32);
+ pub const UpLeft: Self = Self(8i32);
+}
+impl ::core::marker::Copy for GameControllerSwitchPosition {}
+impl ::core::clone::Clone for GameControllerSwitchPosition {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type Gamepad = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct GamepadButtons(pub u32);
+impl GamepadButtons {
+ pub const None: Self = Self(0u32);
+ pub const Menu: Self = Self(1u32);
+ pub const View: Self = Self(2u32);
+ pub const A: Self = Self(4u32);
+ pub const B: Self = Self(8u32);
+ pub const X: Self = Self(16u32);
+ pub const Y: Self = Self(32u32);
+ pub const DPadUp: Self = Self(64u32);
+ pub const DPadDown: Self = Self(128u32);
+ pub const DPadLeft: Self = Self(256u32);
+ pub const DPadRight: Self = Self(512u32);
+ pub const LeftShoulder: Self = Self(1024u32);
+ pub const RightShoulder: Self = Self(2048u32);
+ pub const LeftThumbstick: Self = Self(4096u32);
+ pub const RightThumbstick: Self = Self(8192u32);
+ pub const Paddle1: Self = Self(16384u32);
+ pub const Paddle2: Self = Self(32768u32);
+ pub const Paddle3: Self = Self(65536u32);
+ pub const Paddle4: Self = Self(131072u32);
+}
+impl ::core::marker::Copy for GamepadButtons {}
+impl ::core::clone::Clone for GamepadButtons {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+pub struct GamepadReading {
+ pub Timestamp: u64,
+ pub Buttons: GamepadButtons,
+ pub LeftTrigger: f64,
+ pub RightTrigger: f64,
+ pub LeftThumbstickX: f64,
+ pub LeftThumbstickY: f64,
+ pub RightThumbstickX: f64,
+ pub RightThumbstickY: f64,
+}
+impl ::core::marker::Copy for GamepadReading {}
+impl ::core::clone::Clone for GamepadReading {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+pub struct GamepadVibration {
+ pub LeftMotor: f64,
+ pub RightMotor: f64,
+ pub LeftTrigger: f64,
+ pub RightTrigger: f64,
+}
+impl ::core::marker::Copy for GamepadVibration {}
+impl ::core::clone::Clone for GamepadVibration {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type Headset = *mut ::core::ffi::c_void;
+pub type IGameController = *mut ::core::ffi::c_void;
+pub type IGameControllerBatteryInfo = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct OptionalUINavigationButtons(pub u32);
+impl OptionalUINavigationButtons {
+ pub const None: Self = Self(0u32);
+ pub const Context1: Self = Self(1u32);
+ pub const Context2: Self = Self(2u32);
+ pub const Context3: Self = Self(4u32);
+ pub const Context4: Self = Self(8u32);
+ pub const PageUp: Self = Self(16u32);
+ pub const PageDown: Self = Self(32u32);
+ pub const PageLeft: Self = Self(64u32);
+ pub const PageRight: Self = Self(128u32);
+ pub const ScrollUp: Self = Self(256u32);
+ pub const ScrollDown: Self = Self(512u32);
+ pub const ScrollLeft: Self = Self(1024u32);
+ pub const ScrollRight: Self = Self(2048u32);
+}
+impl ::core::marker::Copy for OptionalUINavigationButtons {}
+impl ::core::clone::Clone for OptionalUINavigationButtons {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type RacingWheel = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct RacingWheelButtons(pub u32);
+impl RacingWheelButtons {
+ pub const None: Self = Self(0u32);
+ pub const PreviousGear: Self = Self(1u32);
+ pub const NextGear: Self = Self(2u32);
+ pub const DPadUp: Self = Self(4u32);
+ pub const DPadDown: Self = Self(8u32);
+ pub const DPadLeft: Self = Self(16u32);
+ pub const DPadRight: Self = Self(32u32);
+ pub const Button1: Self = Self(64u32);
+ pub const Button2: Self = Self(128u32);
+ pub const Button3: Self = Self(256u32);
+ pub const Button4: Self = Self(512u32);
+ pub const Button5: Self = Self(1024u32);
+ pub const Button6: Self = Self(2048u32);
+ pub const Button7: Self = Self(4096u32);
+ pub const Button8: Self = Self(8192u32);
+ pub const Button9: Self = Self(16384u32);
+ pub const Button10: Self = Self(32768u32);
+ pub const Button11: Self = Self(65536u32);
+ pub const Button12: Self = Self(131072u32);
+ pub const Button13: Self = Self(262144u32);
+ pub const Button14: Self = Self(524288u32);
+ pub const Button15: Self = Self(1048576u32);
+ pub const Button16: Self = Self(2097152u32);
+}
+impl ::core::marker::Copy for RacingWheelButtons {}
+impl ::core::clone::Clone for RacingWheelButtons {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+#[repr(C)]
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+pub struct RacingWheelReading {
+ pub Timestamp: u64,
+ pub Buttons: RacingWheelButtons,
+ pub PatternShifterGear: i32,
+ pub Wheel: f64,
+ pub Throttle: f64,
+ pub Brake: f64,
+ pub Clutch: f64,
+ pub Handbrake: f64,
+}
+impl ::core::marker::Copy for RacingWheelReading {}
+impl ::core::clone::Clone for RacingWheelReading {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type RawGameController = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+#[repr(transparent)]
+pub struct RequiredUINavigationButtons(pub u32);
+impl RequiredUINavigationButtons {
+ pub const None: Self = Self(0u32);
+ pub const Menu: Self = Self(1u32);
+ pub const View: Self = Self(2u32);
+ pub const Accept: Self = Self(4u32);
+ pub const Cancel: Self = Self(8u32);
+ pub const Up: Self = Self(16u32);
+ pub const Down: Self = Self(32u32);
+ pub const Left: Self = Self(64u32);
+ pub const Right: Self = Self(128u32);
+}
+impl ::core::marker::Copy for RequiredUINavigationButtons {}
+impl ::core::clone::Clone for RequiredUINavigationButtons {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type UINavigationController = *mut ::core::ffi::c_void;
+#[repr(C)]
+#[doc = "*Required features: `\"Gaming_Input\"`*"]
+pub struct UINavigationReading {
+ pub Timestamp: u64,
+ pub RequiredButtons: RequiredUINavigationButtons,
+ pub OptionalButtons: OptionalUINavigationButtons,
+}
+impl ::core::marker::Copy for UINavigationReading {}
+impl ::core::clone::Clone for UINavigationReading {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
diff --git a/vendor/windows-sys/src/Windows/Gaming/Preview/GamesEnumeration/mod.rs b/vendor/windows-sys/src/Windows/Gaming/Preview/GamesEnumeration/mod.rs
new file mode 100644
index 000000000..62531998f
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/Preview/GamesEnumeration/mod.rs
@@ -0,0 +1,35 @@
+#[doc = "*Required features: `\"Gaming_Preview_GamesEnumeration\"`*"]
+#[repr(transparent)]
+pub struct GameListCategory(pub i32);
+impl GameListCategory {
+ pub const Candidate: Self = Self(0i32);
+ pub const ConfirmedBySystem: Self = Self(1i32);
+ pub const ConfirmedByUser: Self = Self(2i32);
+}
+impl ::core::marker::Copy for GameListCategory {}
+impl ::core::clone::Clone for GameListCategory {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type GameListChangedEventHandler = *mut ::core::ffi::c_void;
+pub type GameListEntry = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_Preview_GamesEnumeration\"`*"]
+#[repr(transparent)]
+pub struct GameListEntryLaunchableState(pub i32);
+impl GameListEntryLaunchableState {
+ pub const NotLaunchable: Self = Self(0i32);
+ pub const ByLastRunningFullPath: Self = Self(1i32);
+ pub const ByUserProvidedPath: Self = Self(2i32);
+ pub const ByTile: Self = Self(3i32);
+}
+impl ::core::marker::Copy for GameListEntryLaunchableState {}
+impl ::core::clone::Clone for GameListEntryLaunchableState {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type GameListRemovedEventHandler = *mut ::core::ffi::c_void;
+pub type GameModeConfiguration = *mut ::core::ffi::c_void;
+pub type GameModeUserConfiguration = *mut ::core::ffi::c_void;
+pub type IGameListEntry = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Gaming/Preview/mod.rs b/vendor/windows-sys/src/Windows/Gaming/Preview/mod.rs
new file mode 100644
index 000000000..5cddcae06
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/Preview/mod.rs
@@ -0,0 +1,2 @@
+#[cfg(feature = "Gaming_Preview_GamesEnumeration")]
+pub mod GamesEnumeration;
diff --git a/vendor/windows-sys/src/Windows/Gaming/UI/mod.rs b/vendor/windows-sys/src/Windows/Gaming/UI/mod.rs
new file mode 100644
index 000000000..c99739d83
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/UI/mod.rs
@@ -0,0 +1,36 @@
+#[doc = "*Required features: `\"Gaming_UI\"`*"]
+#[repr(transparent)]
+pub struct GameChatMessageOrigin(pub i32);
+impl GameChatMessageOrigin {
+ pub const Voice: Self = Self(0i32);
+ pub const Text: Self = Self(1i32);
+}
+impl ::core::marker::Copy for GameChatMessageOrigin {}
+impl ::core::clone::Clone for GameChatMessageOrigin {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type GameChatMessageReceivedEventArgs = *mut ::core::ffi::c_void;
+pub type GameChatOverlay = *mut ::core::ffi::c_void;
+pub type GameChatOverlayMessageSource = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_UI\"`*"]
+#[repr(transparent)]
+pub struct GameChatOverlayPosition(pub i32);
+impl GameChatOverlayPosition {
+ pub const BottomCenter: Self = Self(0i32);
+ pub const BottomLeft: Self = Self(1i32);
+ pub const BottomRight: Self = Self(2i32);
+ pub const MiddleRight: Self = Self(3i32);
+ pub const MiddleLeft: Self = Self(4i32);
+ pub const TopCenter: Self = Self(5i32);
+ pub const TopLeft: Self = Self(6i32);
+ pub const TopRight: Self = Self(7i32);
+}
+impl ::core::marker::Copy for GameChatOverlayPosition {}
+impl ::core::clone::Clone for GameChatOverlayPosition {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type GameUIProviderActivatedEventArgs = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Gaming/XboxLive/Storage/mod.rs b/vendor/windows-sys/src/Windows/Gaming/XboxLive/Storage/mod.rs
new file mode 100644
index 000000000..9c55a961c
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/XboxLive/Storage/mod.rs
@@ -0,0 +1,37 @@
+pub type GameSaveBlobGetResult = *mut ::core::ffi::c_void;
+pub type GameSaveBlobInfo = *mut ::core::ffi::c_void;
+pub type GameSaveBlobInfoGetResult = *mut ::core::ffi::c_void;
+pub type GameSaveBlobInfoQuery = *mut ::core::ffi::c_void;
+pub type GameSaveContainer = *mut ::core::ffi::c_void;
+pub type GameSaveContainerInfo = *mut ::core::ffi::c_void;
+pub type GameSaveContainerInfoGetResult = *mut ::core::ffi::c_void;
+pub type GameSaveContainerInfoQuery = *mut ::core::ffi::c_void;
+#[doc = "*Required features: `\"Gaming_XboxLive_Storage\"`*"]
+#[repr(transparent)]
+pub struct GameSaveErrorStatus(pub i32);
+impl GameSaveErrorStatus {
+ pub const Ok: Self = Self(0i32);
+ pub const Abort: Self = Self(-2147467260i32);
+ pub const InvalidContainerName: Self = Self(-2138898431i32);
+ pub const NoAccess: Self = Self(-2138898430i32);
+ pub const OutOfLocalStorage: Self = Self(-2138898429i32);
+ pub const UserCanceled: Self = Self(-2138898428i32);
+ pub const UpdateTooBig: Self = Self(-2138898427i32);
+ pub const QuotaExceeded: Self = Self(-2138898426i32);
+ pub const ProvidedBufferTooSmall: Self = Self(-2138898425i32);
+ pub const BlobNotFound: Self = Self(-2138898424i32);
+ pub const NoXboxLiveInfo: Self = Self(-2138898423i32);
+ pub const ContainerNotInSync: Self = Self(-2138898422i32);
+ pub const ContainerSyncFailed: Self = Self(-2138898421i32);
+ pub const UserHasNoXboxLiveInfo: Self = Self(-2138898420i32);
+ pub const ObjectExpired: Self = Self(-2138898419i32);
+}
+impl ::core::marker::Copy for GameSaveErrorStatus {}
+impl ::core::clone::Clone for GameSaveErrorStatus {
+ fn clone(&self) -> Self {
+ *self
+ }
+}
+pub type GameSaveOperationResult = *mut ::core::ffi::c_void;
+pub type GameSaveProvider = *mut ::core::ffi::c_void;
+pub type GameSaveProviderGetResult = *mut ::core::ffi::c_void;
diff --git a/vendor/windows-sys/src/Windows/Gaming/XboxLive/mod.rs b/vendor/windows-sys/src/Windows/Gaming/XboxLive/mod.rs
new file mode 100644
index 000000000..d9fc08ce5
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/XboxLive/mod.rs
@@ -0,0 +1,2 @@
+#[cfg(feature = "Gaming_XboxLive_Storage")]
+pub mod Storage;
diff --git a/vendor/windows-sys/src/Windows/Gaming/mod.rs b/vendor/windows-sys/src/Windows/Gaming/mod.rs
new file mode 100644
index 000000000..1f7b2b9ec
--- /dev/null
+++ b/vendor/windows-sys/src/Windows/Gaming/mod.rs
@@ -0,0 +1,8 @@
+#[cfg(feature = "Gaming_Input")]
+pub mod Input;
+#[cfg(feature = "Gaming_Preview")]
+pub mod Preview;
+#[cfg(feature = "Gaming_UI")]
+pub mod UI;
+#[cfg(feature = "Gaming_XboxLive")]
+pub mod XboxLive;