]> git.proxmox.com Git - rustc.git/blame - vendor/windows-sys/src/Windows/Devices/Gpio/Provider/mod.rs
New upstream version 1.63.0+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Devices / Gpio / Provider / mod.rs
CommitLineData
5e7ed085
FG
1pub type GpioPinProviderValueChangedEventArgs = *mut ::core::ffi::c_void;
2pub type IGpioControllerProvider = *mut ::core::ffi::c_void;
3pub type IGpioPinProvider = *mut ::core::ffi::c_void;
4pub type IGpioProvider = *mut ::core::ffi::c_void;
04454e1e 5#[doc = "*Required features: `\"Devices_Gpio_Provider\"`*"]
5e7ed085
FG
6#[repr(transparent)]
7pub struct ProviderGpioPinDriveMode(pub i32);
8impl ProviderGpioPinDriveMode {
9 pub const Input: Self = Self(0i32);
10 pub const Output: Self = Self(1i32);
11 pub const InputPullUp: Self = Self(2i32);
12 pub const InputPullDown: Self = Self(3i32);
13 pub const OutputOpenDrain: Self = Self(4i32);
14 pub const OutputOpenDrainPullUp: Self = Self(5i32);
15 pub const OutputOpenSource: Self = Self(6i32);
16 pub const OutputOpenSourcePullDown: Self = Self(7i32);
17}
18impl ::core::marker::Copy for ProviderGpioPinDriveMode {}
19impl ::core::clone::Clone for ProviderGpioPinDriveMode {
20 fn clone(&self) -> Self {
21 *self
22 }
23}
04454e1e 24#[doc = "*Required features: `\"Devices_Gpio_Provider\"`*"]
5e7ed085
FG
25#[repr(transparent)]
26pub struct ProviderGpioPinEdge(pub i32);
27impl ProviderGpioPinEdge {
28 pub const FallingEdge: Self = Self(0i32);
29 pub const RisingEdge: Self = Self(1i32);
30}
31impl ::core::marker::Copy for ProviderGpioPinEdge {}
32impl ::core::clone::Clone for ProviderGpioPinEdge {
33 fn clone(&self) -> Self {
34 *self
35 }
36}
04454e1e 37#[doc = "*Required features: `\"Devices_Gpio_Provider\"`*"]
5e7ed085
FG
38#[repr(transparent)]
39pub struct ProviderGpioPinValue(pub i32);
40impl ProviderGpioPinValue {
41 pub const Low: Self = Self(0i32);
42 pub const High: Self = Self(1i32);
43}
44impl ::core::marker::Copy for ProviderGpioPinValue {}
45impl ::core::clone::Clone for ProviderGpioPinValue {
46 fn clone(&self) -> Self {
47 *self
48 }
49}
04454e1e 50#[doc = "*Required features: `\"Devices_Gpio_Provider\"`*"]
5e7ed085
FG
51#[repr(transparent)]
52pub struct ProviderGpioSharingMode(pub i32);
53impl ProviderGpioSharingMode {
54 pub const Exclusive: Self = Self(0i32);
55 pub const SharedReadOnly: Self = Self(1i32);
56}
57impl ::core::marker::Copy for ProviderGpioSharingMode {}
58impl ::core::clone::Clone for ProviderGpioSharingMode {
59 fn clone(&self) -> Self {
60 *self
61 }
62}