objc2_home_kit/generated/
HMCameraAudioControl.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5
6use crate::*;
7
8extern_class!(
9    /// [Apple's documentation](https://developer.apple.com/documentation/homekit/hmcameraaudiocontrol?language=objc)
10    #[unsafe(super(HMCameraControl, NSObject))]
11    #[derive(Debug, PartialEq, Eq, Hash)]
12    #[cfg(feature = "HMCameraControl")]
13    pub struct HMCameraAudioControl;
14);
15
16#[cfg(feature = "HMCameraControl")]
17unsafe impl Send for HMCameraAudioControl {}
18
19#[cfg(feature = "HMCameraControl")]
20unsafe impl Sync for HMCameraAudioControl {}
21
22#[cfg(feature = "HMCameraControl")]
23extern_conformance!(
24    unsafe impl NSObjectProtocol for HMCameraAudioControl {}
25);
26
27#[cfg(feature = "HMCameraControl")]
28impl HMCameraAudioControl {
29    extern_methods!(
30        #[unsafe(method(init))]
31        #[unsafe(method_family = init)]
32        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
33
34        #[cfg(feature = "HMCharacteristic")]
35        /// Characteristic corresponding to mute setting on the camera.
36        ///
37        /// This property is not atomic.
38        ///
39        /// # Safety
40        ///
41        /// This might not be thread-safe.
42        #[unsafe(method(mute))]
43        #[unsafe(method_family = none)]
44        pub unsafe fn mute(&self) -> Option<Retained<HMCharacteristic>>;
45
46        #[cfg(feature = "HMCharacteristic")]
47        /// Characteristic corresponding to volume setting on the camera.
48        ///
49        /// This property is not atomic.
50        ///
51        /// # Safety
52        ///
53        /// This might not be thread-safe.
54        #[unsafe(method(volume))]
55        #[unsafe(method_family = none)]
56        pub unsafe fn volume(&self) -> Option<Retained<HMCharacteristic>>;
57    );
58}
59
60/// Methods declared on superclass `NSObject`.
61#[cfg(feature = "HMCameraControl")]
62impl HMCameraAudioControl {
63    extern_methods!(
64        #[unsafe(method(new))]
65        #[unsafe(method_family = new)]
66        pub unsafe fn new() -> Retained<Self>;
67    );
68}