]> git.proxmox.com Git - rustc.git/blob - vendor/windows-sys/src/Windows/Gaming/Input/ForceFeedback/mod.rs
New upstream version 1.63.0+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Gaming / Input / ForceFeedback / mod.rs
1 pub type ConditionForceEffect = *mut ::core::ffi::c_void;
2 #[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
3 #[repr(transparent)]
4 pub struct ConditionForceEffectKind(pub i32);
5 impl ConditionForceEffectKind {
6 pub const Spring: Self = Self(0i32);
7 pub const Damper: Self = Self(1i32);
8 pub const Inertia: Self = Self(2i32);
9 pub const Friction: Self = Self(3i32);
10 }
11 impl ::core::marker::Copy for ConditionForceEffectKind {}
12 impl ::core::clone::Clone for ConditionForceEffectKind {
13 fn clone(&self) -> Self {
14 *self
15 }
16 }
17 pub type ConstantForceEffect = *mut ::core::ffi::c_void;
18 #[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
19 #[repr(transparent)]
20 pub struct ForceFeedbackEffectAxes(pub u32);
21 impl ForceFeedbackEffectAxes {
22 pub const None: Self = Self(0u32);
23 pub const X: Self = Self(1u32);
24 pub const Y: Self = Self(2u32);
25 pub const Z: Self = Self(4u32);
26 }
27 impl ::core::marker::Copy for ForceFeedbackEffectAxes {}
28 impl ::core::clone::Clone for ForceFeedbackEffectAxes {
29 fn clone(&self) -> Self {
30 *self
31 }
32 }
33 #[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
34 #[repr(transparent)]
35 pub struct ForceFeedbackEffectState(pub i32);
36 impl ForceFeedbackEffectState {
37 pub const Stopped: Self = Self(0i32);
38 pub const Running: Self = Self(1i32);
39 pub const Paused: Self = Self(2i32);
40 pub const Faulted: Self = Self(3i32);
41 }
42 impl ::core::marker::Copy for ForceFeedbackEffectState {}
43 impl ::core::clone::Clone for ForceFeedbackEffectState {
44 fn clone(&self) -> Self {
45 *self
46 }
47 }
48 #[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
49 #[repr(transparent)]
50 pub struct ForceFeedbackLoadEffectResult(pub i32);
51 impl ForceFeedbackLoadEffectResult {
52 pub const Succeeded: Self = Self(0i32);
53 pub const EffectStorageFull: Self = Self(1i32);
54 pub const EffectNotSupported: Self = Self(2i32);
55 }
56 impl ::core::marker::Copy for ForceFeedbackLoadEffectResult {}
57 impl ::core::clone::Clone for ForceFeedbackLoadEffectResult {
58 fn clone(&self) -> Self {
59 *self
60 }
61 }
62 pub type ForceFeedbackMotor = *mut ::core::ffi::c_void;
63 pub type IForceFeedbackEffect = *mut ::core::ffi::c_void;
64 pub type PeriodicForceEffect = *mut ::core::ffi::c_void;
65 #[doc = "*Required features: `\"Gaming_Input_ForceFeedback\"`*"]
66 #[repr(transparent)]
67 pub struct PeriodicForceEffectKind(pub i32);
68 impl PeriodicForceEffectKind {
69 pub const SquareWave: Self = Self(0i32);
70 pub const SineWave: Self = Self(1i32);
71 pub const TriangleWave: Self = Self(2i32);
72 pub const SawtoothWaveUp: Self = Self(3i32);
73 pub const SawtoothWaveDown: Self = Self(4i32);
74 }
75 impl ::core::marker::Copy for PeriodicForceEffectKind {}
76 impl ::core::clone::Clone for PeriodicForceEffectKind {
77 fn clone(&self) -> Self {
78 *self
79 }
80 }
81 pub type RampForceEffect = *mut ::core::ffi::c_void;