objc2_core_motion/generated/
CMWaterSubmersionManager.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10extern_protocol!(
11 pub unsafe trait CMWaterSubmersionManagerDelegate: NSObjectProtocol {
13 #[cfg(feature = "CMWaterSubmersionData")]
14 #[unsafe(method(manager:didUpdateEvent:))]
15 #[unsafe(method_family = none)]
16 unsafe fn manager_didUpdateEvent(
17 &self,
18 manager: &CMWaterSubmersionManager,
19 event: &CMWaterSubmersionEvent,
20 );
21
22 #[cfg(feature = "CMWaterSubmersionData")]
23 #[unsafe(method(manager:didUpdateMeasurement:))]
24 #[unsafe(method_family = none)]
25 unsafe fn manager_didUpdateMeasurement(
26 &self,
27 manager: &CMWaterSubmersionManager,
28 measurement: &CMWaterSubmersionMeasurement,
29 );
30
31 #[cfg(feature = "CMWaterSubmersionData")]
32 #[unsafe(method(manager:didUpdateTemperature:))]
33 #[unsafe(method_family = none)]
34 unsafe fn manager_didUpdateTemperature(
35 &self,
36 manager: &CMWaterSubmersionManager,
37 measurement: &CMWaterTemperature,
38 );
39
40 #[unsafe(method(manager:errorOccurred:))]
41 #[unsafe(method_family = none)]
42 unsafe fn manager_errorOccurred(&self, manager: &CMWaterSubmersionManager, error: &NSError);
43 }
44);
45
46extern_class!(
47 #[unsafe(super(NSObject))]
49 #[derive(Debug, PartialEq, Eq, Hash)]
50 pub struct CMWaterSubmersionManager;
51);
52
53extern_conformance!(
54 unsafe impl NSObjectProtocol for CMWaterSubmersionManager {}
55);
56
57impl CMWaterSubmersionManager {
58 extern_methods!(
59 #[unsafe(method(delegate))]
60 #[unsafe(method_family = none)]
61 pub unsafe fn delegate(
62 &self,
63 ) -> Option<Retained<ProtocolObject<dyn CMWaterSubmersionManagerDelegate>>>;
64
65 #[unsafe(method(setDelegate:))]
69 #[unsafe(method_family = none)]
70 pub unsafe fn setDelegate(
71 &self,
72 delegate: Option<&ProtocolObject<dyn CMWaterSubmersionManagerDelegate>>,
73 );
74
75 #[unsafe(method(waterSubmersionAvailable))]
76 #[unsafe(method_family = none)]
77 pub unsafe fn waterSubmersionAvailable() -> bool;
78
79 #[cfg(feature = "CMAuthorization")]
80 #[unsafe(method(authorizationStatus))]
81 #[unsafe(method_family = none)]
82 pub unsafe fn authorizationStatus() -> CMAuthorizationStatus;
83
84 #[unsafe(method(maximumDepth))]
85 #[unsafe(method_family = none)]
86 pub unsafe fn maximumDepth(&self) -> Option<Retained<NSMeasurement<NSUnitLength>>>;
87 );
88}
89
90impl CMWaterSubmersionManager {
92 extern_methods!(
93 #[unsafe(method(init))]
94 #[unsafe(method_family = init)]
95 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
96
97 #[unsafe(method(new))]
98 #[unsafe(method_family = new)]
99 pub unsafe fn new() -> Retained<Self>;
100 );
101}