objc2_external_accessory/generated/
EAAccessoryManager.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10/// [Apple's documentation](https://developer.apple.com/documentation/externalaccessory/eabluetoothaccessorypickererrorcode?language=objc)
11// NS_ENUM
12#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct EABluetoothAccessoryPickerErrorCode(pub NSInteger);
15impl EABluetoothAccessoryPickerErrorCode {
16    #[doc(alias = "EABluetoothAccessoryPickerAlreadyConnected")]
17    pub const AlreadyConnected: Self = Self(0);
18    #[doc(alias = "EABluetoothAccessoryPickerResultNotFound")]
19    pub const ResultNotFound: Self = Self(1);
20    #[doc(alias = "EABluetoothAccessoryPickerResultCancelled")]
21    pub const ResultCancelled: Self = Self(2);
22    #[doc(alias = "EABluetoothAccessoryPickerResultFailed")]
23    pub const ResultFailed: Self = Self(3);
24}
25
26unsafe impl Encode for EABluetoothAccessoryPickerErrorCode {
27    const ENCODING: Encoding = NSInteger::ENCODING;
28}
29
30unsafe impl RefEncode for EABluetoothAccessoryPickerErrorCode {
31    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
32}
33
34extern "C" {
35    /// [Apple's documentation](https://developer.apple.com/documentation/externalaccessory/eabluetoothaccessorypickererrordomain?language=objc)
36    pub static EABluetoothAccessoryPickerErrorDomain: &'static NSString;
37}
38
39/// [Apple's documentation](https://developer.apple.com/documentation/externalaccessory/eabluetoothaccessorypickercompletion?language=objc)
40#[cfg(feature = "block2")]
41pub type EABluetoothAccessoryPickerCompletion = *mut block2::DynBlock<dyn Fn(*mut NSError)>;
42
43extern "C" {
44    /// [Apple's documentation](https://developer.apple.com/documentation/externalaccessory/eaaccessorydidconnectnotification?language=objc)
45    pub static EAAccessoryDidConnectNotification: &'static NSString;
46}
47
48extern "C" {
49    /// [Apple's documentation](https://developer.apple.com/documentation/externalaccessory/eaaccessorydiddisconnectnotification?language=objc)
50    pub static EAAccessoryDidDisconnectNotification: &'static NSString;
51}
52
53extern "C" {
54    /// [Apple's documentation](https://developer.apple.com/documentation/externalaccessory/eaaccessorykey?language=objc)
55    pub static EAAccessoryKey: &'static NSString;
56}
57
58extern "C" {
59    /// [Apple's documentation](https://developer.apple.com/documentation/externalaccessory/eaaccessoryselectedkey?language=objc)
60    pub static EAAccessorySelectedKey: &'static NSString;
61}
62
63extern_class!(
64    /// [Apple's documentation](https://developer.apple.com/documentation/externalaccessory/eaaccessorymanager?language=objc)
65    #[unsafe(super(NSObject))]
66    #[derive(Debug, PartialEq, Eq, Hash)]
67    pub struct EAAccessoryManager;
68);
69
70extern_conformance!(
71    unsafe impl NSObjectProtocol for EAAccessoryManager {}
72);
73
74impl EAAccessoryManager {
75    extern_methods!(
76        #[unsafe(method(sharedAccessoryManager))]
77        #[unsafe(method_family = none)]
78        pub unsafe fn sharedAccessoryManager() -> Retained<EAAccessoryManager>;
79
80        #[cfg(feature = "block2")]
81        /// # Safety
82        ///
83        /// `completion` must be a valid pointer or null.
84        #[unsafe(method(showBluetoothAccessoryPickerWithNameFilter:completion:))]
85        #[unsafe(method_family = none)]
86        pub unsafe fn showBluetoothAccessoryPickerWithNameFilter_completion(
87            &self,
88            predicate: Option<&NSPredicate>,
89            completion: EABluetoothAccessoryPickerCompletion,
90        );
91
92        #[unsafe(method(registerForLocalNotifications))]
93        #[unsafe(method_family = none)]
94        pub unsafe fn registerForLocalNotifications(&self);
95
96        #[unsafe(method(unregisterForLocalNotifications))]
97        #[unsafe(method_family = none)]
98        pub unsafe fn unregisterForLocalNotifications(&self);
99
100        #[cfg(feature = "EAAccessory")]
101        #[unsafe(method(connectedAccessories))]
102        #[unsafe(method_family = none)]
103        pub unsafe fn connectedAccessories(&self) -> Retained<NSArray<EAAccessory>>;
104    );
105}
106
107/// Methods declared on superclass `NSObject`.
108impl EAAccessoryManager {
109    extern_methods!(
110        #[unsafe(method(init))]
111        #[unsafe(method_family = init)]
112        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
113
114        #[unsafe(method(new))]
115        #[unsafe(method_family = new)]
116        pub unsafe fn new() -> Retained<Self>;
117    );
118}