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")]
23unsafe impl NSObjectProtocol for HMCameraAudioControl {}
24
25#[cfg(feature = "HMCameraControl")]
26impl HMCameraAudioControl {
27    extern_methods!(
28        #[unsafe(method(init))]
29        #[unsafe(method_family = init)]
30        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
31
32        #[cfg(feature = "HMCharacteristic")]
33        /// Characteristic corresponding to mute setting on the camera.
34        #[unsafe(method(mute))]
35        #[unsafe(method_family = none)]
36        pub unsafe fn mute(&self) -> Option<Retained<HMCharacteristic>>;
37
38        #[cfg(feature = "HMCharacteristic")]
39        /// Characteristic corresponding to volume setting on the camera.
40        #[unsafe(method(volume))]
41        #[unsafe(method_family = none)]
42        pub unsafe fn volume(&self) -> Option<Retained<HMCharacteristic>>;
43    );
44}
45
46/// Methods declared on superclass `NSObject`.
47#[cfg(feature = "HMCameraControl")]
48impl HMCameraAudioControl {
49    extern_methods!(
50        #[unsafe(method(new))]
51        #[unsafe(method_family = new)]
52        pub unsafe fn new() -> Retained<Self>;
53    );
54}