objc2_core_motion/generated/
CMWaterSubmersionData.rs1use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct CMWaterSubmersionState(pub NSInteger);
14impl CMWaterSubmersionState {
15 #[doc(alias = "CMWaterSubmersionStateUnknown")]
16 pub const Unknown: Self = Self(0);
17 #[doc(alias = "CMWaterSubmersionStateNotSubmerged")]
18 pub const NotSubmerged: Self = Self(1);
19 #[doc(alias = "CMWaterSubmersionStateSubmerged")]
20 pub const Submerged: Self = Self(2);
21}
22
23unsafe impl Encode for CMWaterSubmersionState {
24 const ENCODING: Encoding = NSInteger::ENCODING;
25}
26
27unsafe impl RefEncode for CMWaterSubmersionState {
28 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
29}
30
31#[repr(transparent)]
34#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
35pub struct CMWaterSubmersionDepthState(pub NSInteger);
36impl CMWaterSubmersionDepthState {
37 #[doc(alias = "CMWaterSubmersionDepthStateUnknown")]
38 pub const Unknown: Self = Self(0);
39 #[doc(alias = "CMWaterSubmersionDepthStateNotSubmerged")]
40 pub const NotSubmerged: Self = Self(100);
41 #[doc(alias = "CMWaterSubmersionDepthStateSubmergedShallow")]
42 pub const SubmergedShallow: Self = Self(200);
43 #[doc(alias = "CMWaterSubmersionDepthStateSubmergedDeep")]
44 pub const SubmergedDeep: Self = Self(300);
45 #[doc(alias = "CMWaterSubmersionDepthStateApproachingMaxDepth")]
46 pub const ApproachingMaxDepth: Self = Self(400);
47 #[doc(alias = "CMWaterSubmersionDepthStatePastMaxDepth")]
48 pub const PastMaxDepth: Self = Self(500);
49 #[doc(alias = "CMWaterSubmersionDepthStateSensorDepthError")]
50 pub const SensorDepthError: Self = Self(600);
51}
52
53unsafe impl Encode for CMWaterSubmersionDepthState {
54 const ENCODING: Encoding = NSInteger::ENCODING;
55}
56
57unsafe impl RefEncode for CMWaterSubmersionDepthState {
58 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
59}
60
61extern_class!(
62 #[unsafe(super(NSObject))]
64 #[derive(Debug, PartialEq, Eq, Hash)]
65 pub struct CMWaterSubmersionEvent;
66);
67
68extern_conformance!(
69 unsafe impl NSCoding for CMWaterSubmersionEvent {}
70);
71
72extern_conformance!(
73 unsafe impl NSCopying for CMWaterSubmersionEvent {}
74);
75
76unsafe impl CopyingHelper for CMWaterSubmersionEvent {
77 type Result = Self;
78}
79
80extern_conformance!(
81 unsafe impl NSObjectProtocol for CMWaterSubmersionEvent {}
82);
83
84extern_conformance!(
85 unsafe impl NSSecureCoding for CMWaterSubmersionEvent {}
86);
87
88impl CMWaterSubmersionEvent {
89 extern_methods!(
90 #[unsafe(method(date))]
91 #[unsafe(method_family = none)]
92 pub unsafe fn date(&self) -> Retained<NSDate>;
93
94 #[unsafe(method(state))]
95 #[unsafe(method_family = none)]
96 pub unsafe fn state(&self) -> CMWaterSubmersionState;
97 );
98}
99
100impl CMWaterSubmersionEvent {
102 extern_methods!(
103 #[unsafe(method(init))]
104 #[unsafe(method_family = init)]
105 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
106
107 #[unsafe(method(new))]
108 #[unsafe(method_family = new)]
109 pub unsafe fn new() -> Retained<Self>;
110 );
111}
112
113extern_class!(
114 #[unsafe(super(NSObject))]
116 #[derive(Debug, PartialEq, Eq, Hash)]
117 pub struct CMWaterSubmersionMeasurement;
118);
119
120extern_conformance!(
121 unsafe impl NSCoding for CMWaterSubmersionMeasurement {}
122);
123
124extern_conformance!(
125 unsafe impl NSCopying for CMWaterSubmersionMeasurement {}
126);
127
128unsafe impl CopyingHelper for CMWaterSubmersionMeasurement {
129 type Result = Self;
130}
131
132extern_conformance!(
133 unsafe impl NSObjectProtocol for CMWaterSubmersionMeasurement {}
134);
135
136extern_conformance!(
137 unsafe impl NSSecureCoding for CMWaterSubmersionMeasurement {}
138);
139
140impl CMWaterSubmersionMeasurement {
141 extern_methods!(
142 #[unsafe(method(date))]
143 #[unsafe(method_family = none)]
144 pub unsafe fn date(&self) -> Retained<NSDate>;
145
146 #[unsafe(method(depth))]
147 #[unsafe(method_family = none)]
148 pub unsafe fn depth(&self) -> Option<Retained<NSMeasurement<NSUnitLength>>>;
149
150 #[unsafe(method(pressure))]
151 #[unsafe(method_family = none)]
152 pub unsafe fn pressure(&self) -> Option<Retained<NSMeasurement<NSUnitPressure>>>;
153
154 #[unsafe(method(surfacePressure))]
155 #[unsafe(method_family = none)]
156 pub unsafe fn surfacePressure(&self) -> Retained<NSMeasurement<NSUnitPressure>>;
157
158 #[unsafe(method(submersionState))]
159 #[unsafe(method_family = none)]
160 pub unsafe fn submersionState(&self) -> CMWaterSubmersionDepthState;
161 );
162}
163
164impl CMWaterSubmersionMeasurement {
166 extern_methods!(
167 #[unsafe(method(init))]
168 #[unsafe(method_family = init)]
169 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
170
171 #[unsafe(method(new))]
172 #[unsafe(method_family = new)]
173 pub unsafe fn new() -> Retained<Self>;
174 );
175}
176
177extern_class!(
178 #[unsafe(super(NSObject))]
180 #[derive(Debug, PartialEq, Eq, Hash)]
181 pub struct CMWaterTemperature;
182);
183
184extern_conformance!(
185 unsafe impl NSCoding for CMWaterTemperature {}
186);
187
188extern_conformance!(
189 unsafe impl NSCopying for CMWaterTemperature {}
190);
191
192unsafe impl CopyingHelper for CMWaterTemperature {
193 type Result = Self;
194}
195
196extern_conformance!(
197 unsafe impl NSObjectProtocol for CMWaterTemperature {}
198);
199
200extern_conformance!(
201 unsafe impl NSSecureCoding for CMWaterTemperature {}
202);
203
204impl CMWaterTemperature {
205 extern_methods!(
206 #[unsafe(method(date))]
207 #[unsafe(method_family = none)]
208 pub unsafe fn date(&self) -> Retained<NSDate>;
209
210 #[unsafe(method(temperature))]
211 #[unsafe(method_family = none)]
212 pub unsafe fn temperature(&self) -> Retained<NSMeasurement<NSUnitTemperature>>;
213
214 #[unsafe(method(temperatureUncertainty))]
215 #[unsafe(method_family = none)]
216 pub unsafe fn temperatureUncertainty(&self) -> Retained<NSMeasurement<NSUnitTemperature>>;
217 );
218}
219
220impl CMWaterTemperature {
222 extern_methods!(
223 #[unsafe(method(init))]
224 #[unsafe(method_family = init)]
225 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
226
227 #[unsafe(method(new))]
228 #[unsafe(method_family = new)]
229 pub unsafe fn new() -> Retained<Self>;
230 );
231}