]> git.proxmox.com Git - rustc.git/blame - vendor/windows-sys/src/Windows/Devices/Geolocation/mod.rs
New upstream version 1.66.0+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Devices / Geolocation / mod.rs
CommitLineData
5e7ed085
FG
1#[cfg(feature = "Devices_Geolocation_Geofencing")]
2pub mod Geofencing;
04454e1e 3#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
4#[repr(transparent)]
5pub struct AltitudeReferenceSystem(pub i32);
6impl AltitudeReferenceSystem {
7 pub const Unspecified: Self = Self(0i32);
8 pub const Terrain: Self = Self(1i32);
9 pub const Ellipsoid: Self = Self(2i32);
10 pub const Geoid: Self = Self(3i32);
11 pub const Surface: Self = Self(4i32);
12}
13impl ::core::marker::Copy for AltitudeReferenceSystem {}
14impl ::core::clone::Clone for AltitudeReferenceSystem {
15 fn clone(&self) -> Self {
16 *self
17 }
18}
19#[repr(C)]
04454e1e 20#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
21pub struct BasicGeoposition {
22 pub Latitude: f64,
23 pub Longitude: f64,
24 pub Altitude: f64,
25}
26impl ::core::marker::Copy for BasicGeoposition {}
27impl ::core::clone::Clone for BasicGeoposition {
28 fn clone(&self) -> Self {
29 *self
30 }
31}
32pub type CivicAddress = *mut ::core::ffi::c_void;
33pub type GeoboundingBox = *mut ::core::ffi::c_void;
34pub type Geocircle = *mut ::core::ffi::c_void;
35pub type Geocoordinate = *mut ::core::ffi::c_void;
36pub type GeocoordinateSatelliteData = *mut ::core::ffi::c_void;
04454e1e 37#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
38#[repr(transparent)]
39pub struct GeolocationAccessStatus(pub i32);
40impl GeolocationAccessStatus {
41 pub const Unspecified: Self = Self(0i32);
42 pub const Allowed: Self = Self(1i32);
43 pub const Denied: Self = Self(2i32);
44}
45impl ::core::marker::Copy for GeolocationAccessStatus {}
46impl ::core::clone::Clone for GeolocationAccessStatus {
47 fn clone(&self) -> Self {
48 *self
49 }
50}
51pub type Geolocator = *mut ::core::ffi::c_void;
52pub type Geopath = *mut ::core::ffi::c_void;
53pub type Geopoint = *mut ::core::ffi::c_void;
54pub type Geoposition = *mut ::core::ffi::c_void;
04454e1e 55#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
56#[repr(transparent)]
57pub struct GeoshapeType(pub i32);
58impl GeoshapeType {
59 pub const Geopoint: Self = Self(0i32);
60 pub const Geocircle: Self = Self(1i32);
61 pub const Geopath: Self = Self(2i32);
62 pub const GeoboundingBox: Self = Self(3i32);
63}
64impl ::core::marker::Copy for GeoshapeType {}
65impl ::core::clone::Clone for GeoshapeType {
66 fn clone(&self) -> Self {
67 *self
68 }
69}
70pub type Geovisit = *mut ::core::ffi::c_void;
71pub type GeovisitMonitor = *mut ::core::ffi::c_void;
72pub type GeovisitStateChangedEventArgs = *mut ::core::ffi::c_void;
73pub type GeovisitTriggerDetails = *mut ::core::ffi::c_void;
74pub type IGeoshape = *mut ::core::ffi::c_void;
04454e1e 75#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
76#[repr(transparent)]
77pub struct PositionAccuracy(pub i32);
78impl PositionAccuracy {
79 pub const Default: Self = Self(0i32);
80 pub const High: Self = Self(1i32);
81}
82impl ::core::marker::Copy for PositionAccuracy {}
83impl ::core::clone::Clone for PositionAccuracy {
84 fn clone(&self) -> Self {
85 *self
86 }
87}
88pub type PositionChangedEventArgs = *mut ::core::ffi::c_void;
04454e1e 89#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
90#[repr(transparent)]
91pub struct PositionSource(pub i32);
92impl PositionSource {
93 pub const Cellular: Self = Self(0i32);
94 pub const Satellite: Self = Self(1i32);
95 pub const WiFi: Self = Self(2i32);
96 pub const IPAddress: Self = Self(3i32);
97 pub const Unknown: Self = Self(4i32);
98 pub const Default: Self = Self(5i32);
99 pub const Obfuscated: Self = Self(6i32);
100}
101impl ::core::marker::Copy for PositionSource {}
102impl ::core::clone::Clone for PositionSource {
103 fn clone(&self) -> Self {
104 *self
105 }
106}
04454e1e 107#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
108#[repr(transparent)]
109pub struct PositionStatus(pub i32);
110impl PositionStatus {
111 pub const Ready: Self = Self(0i32);
112 pub const Initializing: Self = Self(1i32);
113 pub const NoData: Self = Self(2i32);
114 pub const Disabled: Self = Self(3i32);
115 pub const NotInitialized: Self = Self(4i32);
116 pub const NotAvailable: Self = Self(5i32);
117}
118impl ::core::marker::Copy for PositionStatus {}
119impl ::core::clone::Clone for PositionStatus {
120 fn clone(&self) -> Self {
121 *self
122 }
123}
124pub type StatusChangedEventArgs = *mut ::core::ffi::c_void;
125pub type VenueData = *mut ::core::ffi::c_void;
04454e1e 126#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
127#[repr(transparent)]
128pub struct VisitMonitoringScope(pub i32);
129impl VisitMonitoringScope {
130 pub const Venue: Self = Self(0i32);
131 pub const City: Self = Self(1i32);
132}
133impl ::core::marker::Copy for VisitMonitoringScope {}
134impl ::core::clone::Clone for VisitMonitoringScope {
135 fn clone(&self) -> Self {
136 *self
137 }
138}
04454e1e 139#[doc = "*Required features: `\"Devices_Geolocation\"`*"]
5e7ed085
FG
140#[repr(transparent)]
141pub struct VisitStateChange(pub i32);
142impl VisitStateChange {
143 pub const TrackingLost: Self = Self(0i32);
144 pub const Arrived: Self = Self(1i32);
145 pub const Departed: Self = Self(2i32);
146 pub const OtherMovement: Self = Self(3i32);
147}
148impl ::core::marker::Copy for VisitStateChange {}
149impl ::core::clone::Clone for VisitStateChange {
150 fn clone(&self) -> Self {
151 *self
152 }
153}