objc2_core_motion/generated/
CMHighFrequencyHeartRateData.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct CMHighFrequencyHeartRateDataConfidence(pub NSInteger);
15impl CMHighFrequencyHeartRateDataConfidence {
16 #[doc(alias = "CMHighFrequencyHeartRateDataConfidenceLow")]
17 pub const Low: Self = Self(0);
18 #[doc(alias = "CMHighFrequencyHeartRateDataConfidenceMedium")]
19 pub const Medium: Self = Self(1);
20 #[doc(alias = "CMHighFrequencyHeartRateDataConfidenceHigh")]
21 pub const High: Self = Self(2);
22 #[doc(alias = "CMHighFrequencyHeartRateDataConfidenceHighest")]
23 pub const Highest: Self = Self(3);
24}
25
26unsafe impl Encode for CMHighFrequencyHeartRateDataConfidence {
27 const ENCODING: Encoding = NSInteger::ENCODING;
28}
29
30unsafe impl RefEncode for CMHighFrequencyHeartRateDataConfidence {
31 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
32}
33
34extern_class!(
35 #[unsafe(super(CMLogItem, NSObject))]
37 #[derive(Debug, PartialEq, Eq, Hash)]
38 #[cfg(feature = "CMLogItem")]
39 pub struct CMHighFrequencyHeartRateData;
40);
41
42#[cfg(feature = "CMLogItem")]
43extern_conformance!(
44 unsafe impl NSCoding for CMHighFrequencyHeartRateData {}
45);
46
47#[cfg(feature = "CMLogItem")]
48extern_conformance!(
49 unsafe impl NSCopying for CMHighFrequencyHeartRateData {}
50);
51
52#[cfg(feature = "CMLogItem")]
53unsafe impl CopyingHelper for CMHighFrequencyHeartRateData {
54 type Result = Self;
55}
56
57#[cfg(feature = "CMLogItem")]
58extern_conformance!(
59 unsafe impl NSObjectProtocol for CMHighFrequencyHeartRateData {}
60);
61
62#[cfg(feature = "CMLogItem")]
63extern_conformance!(
64 unsafe impl NSSecureCoding for CMHighFrequencyHeartRateData {}
65);
66
67#[cfg(feature = "CMLogItem")]
68impl CMHighFrequencyHeartRateData {
69 extern_methods!(
70 #[unsafe(method(heartRate))]
71 #[unsafe(method_family = none)]
72 pub unsafe fn heartRate(&self) -> c_double;
73
74 #[unsafe(method(confidence))]
75 #[unsafe(method_family = none)]
76 pub unsafe fn confidence(&self) -> CMHighFrequencyHeartRateDataConfidence;
77
78 #[unsafe(method(date))]
79 #[unsafe(method_family = none)]
80 pub unsafe fn date(&self) -> Option<Retained<NSDate>>;
81 );
82}
83
84#[cfg(feature = "CMLogItem")]
86impl CMHighFrequencyHeartRateData {
87 extern_methods!(
88 #[unsafe(method(init))]
89 #[unsafe(method_family = init)]
90 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
91
92 #[unsafe(method(new))]
93 #[unsafe(method_family = new)]
94 pub unsafe fn new() -> Retained<Self>;
95 );
96}