objc2_core_image/generated/
CIBarcodeDescriptor.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::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9extern_class!(
10    /// CIBarcodeDescriptor is an abstract base class that defines an abstract representation of a machine readable code's symbol attributes.
11    ///
12    ///
13    /// Each subclass is sufficient to recreate the symbol exactly as seen or to be used with a custom parser. Subclasses of CIBarcodeDescriptor are defined for each code type to contain the formal specification of each symbology.
14    ///
15    /// See also [Apple's documentation](https://developer.apple.com/documentation/coreimage/cibarcodedescriptor?language=objc)
16    #[unsafe(super(NSObject))]
17    #[derive(Debug, PartialEq, Eq, Hash)]
18    pub struct CIBarcodeDescriptor;
19);
20
21extern_conformance!(
22    unsafe impl NSCoding for CIBarcodeDescriptor {}
23);
24
25extern_conformance!(
26    unsafe impl NSCopying for CIBarcodeDescriptor {}
27);
28
29unsafe impl CopyingHelper for CIBarcodeDescriptor {
30    type Result = Self;
31}
32
33extern_conformance!(
34    unsafe impl NSObjectProtocol for CIBarcodeDescriptor {}
35);
36
37extern_conformance!(
38    unsafe impl NSSecureCoding for CIBarcodeDescriptor {}
39);
40
41impl CIBarcodeDescriptor {
42    extern_methods!();
43}
44
45/// Methods declared on superclass `NSObject`.
46impl CIBarcodeDescriptor {
47    extern_methods!(
48        #[unsafe(method(init))]
49        #[unsafe(method_family = init)]
50        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
51
52        #[unsafe(method(new))]
53        #[unsafe(method_family = new)]
54        pub unsafe fn new() -> Retained<Self>;
55    );
56}
57
58/// Constants indicating the percentage of the symbol that is dedicated to error correction.
59///
60///
61/// Indicates that approximately 20% of the symbol data is dedicated to error correction.
62///
63/// Indicates that approximately 37% of the symbol data is dedicated to error correction.
64///
65/// Indicates that approximately 55% of the symbol data is dedicated to error correction.
66///
67/// Indicates that approximately 65% of the symbol data is dedicated to error correction.
68///
69/// See also [Apple's documentation](https://developer.apple.com/documentation/coreimage/ciqrcodeerrorcorrectionlevel?language=objc)
70// NS_ENUM
71#[repr(transparent)]
72#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
73pub struct CIQRCodeErrorCorrectionLevel(pub NSInteger);
74impl CIQRCodeErrorCorrectionLevel {
75    #[doc(alias = "CIQRCodeErrorCorrectionLevelL")]
76    pub const L: Self = Self(b'L' as _);
77    #[doc(alias = "CIQRCodeErrorCorrectionLevelM")]
78    pub const M: Self = Self(b'M' as _);
79    #[doc(alias = "CIQRCodeErrorCorrectionLevelQ")]
80    pub const Q: Self = Self(b'Q' as _);
81    #[doc(alias = "CIQRCodeErrorCorrectionLevelH")]
82    pub const H: Self = Self(b'H' as _);
83}
84
85unsafe impl Encode for CIQRCodeErrorCorrectionLevel {
86    const ENCODING: Encoding = NSInteger::ENCODING;
87}
88
89unsafe impl RefEncode for CIQRCodeErrorCorrectionLevel {
90    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
91}
92
93extern_class!(
94    /// CIQRCodeDescriptor is a concrete subclass of CIBarcodeDescriptor that defines an abstract representation of a QR code symbol.
95    ///
96    /// See also [Apple's documentation](https://developer.apple.com/documentation/coreimage/ciqrcodedescriptor?language=objc)
97    #[unsafe(super(CIBarcodeDescriptor, NSObject))]
98    #[derive(Debug, PartialEq, Eq, Hash)]
99    pub struct CIQRCodeDescriptor;
100);
101
102extern_conformance!(
103    unsafe impl NSCoding for CIQRCodeDescriptor {}
104);
105
106extern_conformance!(
107    unsafe impl NSCopying for CIQRCodeDescriptor {}
108);
109
110unsafe impl CopyingHelper for CIQRCodeDescriptor {
111    type Result = Self;
112}
113
114extern_conformance!(
115    unsafe impl NSObjectProtocol for CIQRCodeDescriptor {}
116);
117
118extern_conformance!(
119    unsafe impl NSSecureCoding for CIQRCodeDescriptor {}
120);
121
122impl CIQRCodeDescriptor {
123    extern_methods!(
124        /// The error-corrected codewords that comprise the QR code symbol.
125        ///
126        ///
127        /// QR Codes are formally specified in ISO/IEC 18004:2006(E). Section 6.4.10 "Bitstream to codeword conversion" specifies the set of 8-bit codewords in the symbol immediately prior to splitting the message into blocks and applying error correction.
128        ///
129        /// During decode, error correction is applied and if successful, the message is re-ordered to the state immediately following "Bitstream to codeword coversion." The errorCorrectedPayload corresponds to this sequence of 8-bit codewords.
130        #[unsafe(method(errorCorrectedPayload))]
131        #[unsafe(method_family = none)]
132        pub unsafe fn errorCorrectedPayload(&self) -> Retained<NSData>;
133
134        /// The version property corresponds to the size of the QR Code.
135        ///
136        ///
137        /// QR Codes are square. ISO/IEC 18004 defines versions from 1 to 40, where a higher symbol version indicates a larger data carrying capacity. This field is required in order to properly interpret the error corrected payload.
138        #[unsafe(method(symbolVersion))]
139        #[unsafe(method_family = none)]
140        pub unsafe fn symbolVersion(&self) -> NSInteger;
141
142        /// The data mask pattern for the QR code symbol.
143        ///
144        ///
145        /// QR Codes support eight data mask patterns, which are used to avoid large black or large white areas inside the symbol body. Valid values range from 0 to 7.
146        #[unsafe(method(maskPattern))]
147        #[unsafe(method_family = none)]
148        pub unsafe fn maskPattern(&self) -> u8;
149
150        /// The error correction level of the QR code.
151        ///
152        ///
153        /// QR Codes support four levels of Reed-Solomon error correction, in increasing error correction capability: L, M, Q, and H.
154        #[unsafe(method(errorCorrectionLevel))]
155        #[unsafe(method_family = none)]
156        pub unsafe fn errorCorrectionLevel(&self) -> CIQRCodeErrorCorrectionLevel;
157
158        #[unsafe(method(initWithPayload:symbolVersion:maskPattern:errorCorrectionLevel:))]
159        #[unsafe(method_family = init)]
160        pub unsafe fn initWithPayload_symbolVersion_maskPattern_errorCorrectionLevel(
161            this: Allocated<Self>,
162            error_corrected_payload: &NSData,
163            symbol_version: NSInteger,
164            mask_pattern: u8,
165            error_correction_level: CIQRCodeErrorCorrectionLevel,
166        ) -> Option<Retained<Self>>;
167
168        #[unsafe(method(descriptorWithPayload:symbolVersion:maskPattern:errorCorrectionLevel:))]
169        #[unsafe(method_family = none)]
170        pub unsafe fn descriptorWithPayload_symbolVersion_maskPattern_errorCorrectionLevel(
171            error_corrected_payload: &NSData,
172            symbol_version: NSInteger,
173            mask_pattern: u8,
174            error_correction_level: CIQRCodeErrorCorrectionLevel,
175        ) -> Option<Retained<Self>>;
176    );
177}
178
179/// Methods declared on superclass `NSObject`.
180impl CIQRCodeDescriptor {
181    extern_methods!(
182        #[unsafe(method(init))]
183        #[unsafe(method_family = init)]
184        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
185
186        #[unsafe(method(new))]
187        #[unsafe(method_family = new)]
188        pub unsafe fn new() -> Retained<Self>;
189    );
190}
191
192extern_class!(
193    /// CIAztecCodeDescriptor is a concrete subclass of CIBarcodeDescriptor that defines an abstract representation of an Aztec Code symbol.
194    ///
195    ///
196    /// CIAztecCodeDescriptor may not be instantiated directly.
197    ///
198    /// See also [Apple's documentation](https://developer.apple.com/documentation/coreimage/ciazteccodedescriptor?language=objc)
199    #[unsafe(super(CIBarcodeDescriptor, NSObject))]
200    #[derive(Debug, PartialEq, Eq, Hash)]
201    pub struct CIAztecCodeDescriptor;
202);
203
204extern_conformance!(
205    unsafe impl NSCoding for CIAztecCodeDescriptor {}
206);
207
208extern_conformance!(
209    unsafe impl NSCopying for CIAztecCodeDescriptor {}
210);
211
212unsafe impl CopyingHelper for CIAztecCodeDescriptor {
213    type Result = Self;
214}
215
216extern_conformance!(
217    unsafe impl NSObjectProtocol for CIAztecCodeDescriptor {}
218);
219
220extern_conformance!(
221    unsafe impl NSSecureCoding for CIAztecCodeDescriptor {}
222);
223
224impl CIAztecCodeDescriptor {
225    extern_methods!(
226        /// The error-corrected codewords that comprise the Aztec code symbol.
227        ///
228        ///
229        /// Aztec Codes are formally specified in ISO/IEC 24778:2008(E).
230        ///
231        /// The error corrected payload consists of the 6-, 8-, 10-, or 12-bit message codewords produced at the end of the step described in section 7.3.1.2 "Formation of data codewords", which exists immediately prior to adding error correction. These codewords have dummy bits inserted to ensure that an entire codeword isn't all 0's or all 1's. Clients will need to remove these extra bits as part of interpreting the payload.
232        #[unsafe(method(errorCorrectedPayload))]
233        #[unsafe(method_family = none)]
234        pub unsafe fn errorCorrectedPayload(&self) -> Retained<NSData>;
235
236        /// A BOOL indicating whether the symbol is compact.
237        ///
238        ///
239        /// Compact Aztec symbols use one-fewer ring in the central finder pattern than full-range Aztec symbols of the same number of data layers.
240        #[unsafe(method(isCompact))]
241        #[unsafe(method_family = none)]
242        pub unsafe fn isCompact(&self) -> bool;
243
244        /// The number of data layers in the Aztec code symbol.
245        ///
246        ///
247        /// Combined with the isCompact property, the number of data layers determines the number of modules in the Aztec Code symbol. Valid values range from 1 to 32. Compact symbols can have up to 4 data layers.
248        ///
249        /// The number of data layers also determines the number of bits in each data codeword of the message carried by the Aztec Code symbol.
250        #[unsafe(method(layerCount))]
251        #[unsafe(method_family = none)]
252        pub unsafe fn layerCount(&self) -> NSInteger;
253
254        /// The number of non-error-correction codewords carried by the Aztec code symbol.
255        ///
256        ///
257        /// Used to determine the level of error correction in conjunction with the number of data layers. Valid values are 1...2048. Compact symbols can have up to 64 message codewords.
258        ///
259        /// Note that this value can exceed the number of message codewords allowed by the number of data layers in this symbol. In this case, the actual number of message codewords is 1024 fewer than this value and the message payload is to be interpreted in an application-defined manner.
260        #[unsafe(method(dataCodewordCount))]
261        #[unsafe(method_family = none)]
262        pub unsafe fn dataCodewordCount(&self) -> NSInteger;
263
264        #[unsafe(method(initWithPayload:isCompact:layerCount:dataCodewordCount:))]
265        #[unsafe(method_family = init)]
266        pub unsafe fn initWithPayload_isCompact_layerCount_dataCodewordCount(
267            this: Allocated<Self>,
268            error_corrected_payload: &NSData,
269            is_compact: bool,
270            layer_count: NSInteger,
271            data_codeword_count: NSInteger,
272        ) -> Option<Retained<Self>>;
273
274        #[unsafe(method(descriptorWithPayload:isCompact:layerCount:dataCodewordCount:))]
275        #[unsafe(method_family = none)]
276        pub unsafe fn descriptorWithPayload_isCompact_layerCount_dataCodewordCount(
277            error_corrected_payload: &NSData,
278            is_compact: bool,
279            layer_count: NSInteger,
280            data_codeword_count: NSInteger,
281        ) -> Option<Retained<Self>>;
282    );
283}
284
285/// Methods declared on superclass `NSObject`.
286impl CIAztecCodeDescriptor {
287    extern_methods!(
288        #[unsafe(method(init))]
289        #[unsafe(method_family = init)]
290        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
291
292        #[unsafe(method(new))]
293        #[unsafe(method_family = new)]
294        pub unsafe fn new() -> Retained<Self>;
295    );
296}
297
298extern_class!(
299    /// CIPDF417CodeDescriptor is a concrete subclass of CIBarcodeDescriptor that defines an abstract representation of a PDF417 code symbol.
300    ///
301    ///
302    /// Refer to the ISO/IEC 15438:2006(E) for the PDF417 symbol specification.
303    ///
304    /// See also [Apple's documentation](https://developer.apple.com/documentation/coreimage/cipdf417codedescriptor?language=objc)
305    #[unsafe(super(CIBarcodeDescriptor, NSObject))]
306    #[derive(Debug, PartialEq, Eq, Hash)]
307    pub struct CIPDF417CodeDescriptor;
308);
309
310extern_conformance!(
311    unsafe impl NSCoding for CIPDF417CodeDescriptor {}
312);
313
314extern_conformance!(
315    unsafe impl NSCopying for CIPDF417CodeDescriptor {}
316);
317
318unsafe impl CopyingHelper for CIPDF417CodeDescriptor {
319    type Result = Self;
320}
321
322extern_conformance!(
323    unsafe impl NSObjectProtocol for CIPDF417CodeDescriptor {}
324);
325
326extern_conformance!(
327    unsafe impl NSSecureCoding for CIPDF417CodeDescriptor {}
328);
329
330impl CIPDF417CodeDescriptor {
331    extern_methods!(
332        /// The error-corrected codewords which comprise the PDF417 symbol. The first codeword indicates the number of data codewords in the errorCorrectedPayload.
333        ///
334        ///
335        /// PDF417 codes are comprised of a start character on the left and a stop character on the right. Each row begins and ends with special characters indicating the current row as well as information about the dimensions of the PDF417 symbol. The errorCorrectedPayload represents the sequence of PDF417 codewords that make up the body of the message. The first codeword indicates the number of codewords in the message. This count includes the "count" codeword and any padding codewords, but does not include the error correction codewords. Each codeword is a 16-bit value in the range of 0...928. The sequence is to be interpreted as described in the PDF417 bar code symbology specification -- ISO/IEC 15438:2006(E).
336        #[unsafe(method(errorCorrectedPayload))]
337        #[unsafe(method_family = none)]
338        pub unsafe fn errorCorrectedPayload(&self) -> Retained<NSData>;
339
340        /// A BOOL indicating whether the symbol is compact.
341        ///
342        ///
343        /// Compact PDF417 symbols have abbreviated right-side guard bars.
344        #[unsafe(method(isCompact))]
345        #[unsafe(method_family = none)]
346        pub unsafe fn isCompact(&self) -> bool;
347
348        /// Indicates the number of rows in the rectangular matrix.
349        ///
350        ///
351        /// rowCount values range from 3 to 90.
352        #[unsafe(method(rowCount))]
353        #[unsafe(method_family = none)]
354        pub unsafe fn rowCount(&self) -> NSInteger;
355
356        /// Indicates the number of columns in the rectangular matrix, excluding the columns used to indicate the symbol structure.
357        ///
358        ///
359        /// columnCount values range from 1 to 30.
360        #[unsafe(method(columnCount))]
361        #[unsafe(method_family = none)]
362        pub unsafe fn columnCount(&self) -> NSInteger;
363
364        #[unsafe(method(initWithPayload:isCompact:rowCount:columnCount:))]
365        #[unsafe(method_family = init)]
366        pub unsafe fn initWithPayload_isCompact_rowCount_columnCount(
367            this: Allocated<Self>,
368            error_corrected_payload: &NSData,
369            is_compact: bool,
370            row_count: NSInteger,
371            column_count: NSInteger,
372        ) -> Option<Retained<Self>>;
373
374        #[unsafe(method(descriptorWithPayload:isCompact:rowCount:columnCount:))]
375        #[unsafe(method_family = none)]
376        pub unsafe fn descriptorWithPayload_isCompact_rowCount_columnCount(
377            error_corrected_payload: &NSData,
378            is_compact: bool,
379            row_count: NSInteger,
380            column_count: NSInteger,
381        ) -> Option<Retained<Self>>;
382    );
383}
384
385/// Methods declared on superclass `NSObject`.
386impl CIPDF417CodeDescriptor {
387    extern_methods!(
388        #[unsafe(method(init))]
389        #[unsafe(method_family = init)]
390        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
391
392        #[unsafe(method(new))]
393        #[unsafe(method_family = new)]
394        pub unsafe fn new() -> Retained<Self>;
395    );
396}
397
398/// Constants indicating the Data Matrix code ECC version.
399///
400///
401/// ECC 000 - 140 symbols offer five levels of error correction using convolutional code error correction. Each successive level of error correction offers more protection for the message data and increases the size of the symbol required to carry a specific message. ECC 000 symbols offer no data protection. The other modes are described in ISO/IEC 16022:2006 and enumerated in this list only for completeness.
402///
403/// ECC 200 symbols utilize Reed-Solomon error correction. The error correction capacity for any given Data Matrix symbol is fixed by the size (in rows and columns) of the symbol. See Table 7 of ISO/IEC 16022:2006(E) for more details.
404///
405///
406/// Indicates error correction using convolutional code error correction with no data protection.
407///
408/// Indicates 1/4 of the symbol is dedicated to convolutional code error correction.
409///
410/// Indicates 1/3 of the symbol is dedicated to convolutional code error correction.
411///
412/// Indicates 1/2 of the symbol is dedicated to convolutional code error correction.
413///
414/// Indicates 3/4 of the symbol is dedicated to convolutional code error correction.
415///
416/// Indicates error correction using Reed-Solomon error correction. Data protection overhead varies based on symbol size.
417///
418/// See also [Apple's documentation](https://developer.apple.com/documentation/coreimage/cidatamatrixcodeeccversion?language=objc)
419// NS_ENUM
420#[repr(transparent)]
421#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
422pub struct CIDataMatrixCodeECCVersion(pub NSInteger);
423impl CIDataMatrixCodeECCVersion {
424    #[doc(alias = "CIDataMatrixCodeECCVersion000")]
425    pub const Version000: Self = Self(0);
426    #[doc(alias = "CIDataMatrixCodeECCVersion050")]
427    pub const Version050: Self = Self(50);
428    #[doc(alias = "CIDataMatrixCodeECCVersion080")]
429    pub const Version080: Self = Self(80);
430    #[doc(alias = "CIDataMatrixCodeECCVersion100")]
431    pub const Version100: Self = Self(100);
432    #[doc(alias = "CIDataMatrixCodeECCVersion140")]
433    pub const Version140: Self = Self(140);
434    #[doc(alias = "CIDataMatrixCodeECCVersion200")]
435    pub const Version200: Self = Self(200);
436}
437
438unsafe impl Encode for CIDataMatrixCodeECCVersion {
439    const ENCODING: Encoding = NSInteger::ENCODING;
440}
441
442unsafe impl RefEncode for CIDataMatrixCodeECCVersion {
443    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
444}
445
446extern_class!(
447    /// CIDataMatrixCodeDescriptor is a concrete subclass of CIBarcodeDescriptor that defines an abstract representation of a Data Matrix code symbol.
448    ///
449    /// See also [Apple's documentation](https://developer.apple.com/documentation/coreimage/cidatamatrixcodedescriptor?language=objc)
450    #[unsafe(super(CIBarcodeDescriptor, NSObject))]
451    #[derive(Debug, PartialEq, Eq, Hash)]
452    pub struct CIDataMatrixCodeDescriptor;
453);
454
455extern_conformance!(
456    unsafe impl NSCoding for CIDataMatrixCodeDescriptor {}
457);
458
459extern_conformance!(
460    unsafe impl NSCopying for CIDataMatrixCodeDescriptor {}
461);
462
463unsafe impl CopyingHelper for CIDataMatrixCodeDescriptor {
464    type Result = Self;
465}
466
467extern_conformance!(
468    unsafe impl NSObjectProtocol for CIDataMatrixCodeDescriptor {}
469);
470
471extern_conformance!(
472    unsafe impl NSSecureCoding for CIDataMatrixCodeDescriptor {}
473);
474
475impl CIDataMatrixCodeDescriptor {
476    extern_methods!(
477        /// The error corrected payload that comprise the Data Matrix code symbol.
478        ///
479        ///
480        /// DataMatrix symbols are specified bn ISO/IEC 16022:2006(E). ECC 200-type symbols will always have an even number of rows and columns.
481        ///
482        /// For ECC 200-type symbols, the phases of encoding data into a symbol are described in section 5.1 -- Encode procedure overview. The error corrected payload comprises the de-interleaved bits of the message described at the end of Step 1: Data encodation.
483        #[unsafe(method(errorCorrectedPayload))]
484        #[unsafe(method_family = none)]
485        pub unsafe fn errorCorrectedPayload(&self) -> Retained<NSData>;
486
487        /// The number of module rows.
488        ///
489        ///
490        /// Refer to ISO/IEC 16022:2006(E) for valid module row and column count combinations.
491        #[unsafe(method(rowCount))]
492        #[unsafe(method_family = none)]
493        pub unsafe fn rowCount(&self) -> NSInteger;
494
495        /// The number of module columns.
496        ///
497        ///
498        /// Refer to ISO/IEC 16022:2006(E) for valid module row and column count combinations.
499        #[unsafe(method(columnCount))]
500        #[unsafe(method_family = none)]
501        pub unsafe fn columnCount(&self) -> NSInteger;
502
503        /// The Data Matrix code ECC version.
504        ///
505        ///
506        /// Valid values are 000, 050, 080, 100, 140, and 200. Any symbol with an even number of rows and columns will be ECC 200.
507        #[unsafe(method(eccVersion))]
508        #[unsafe(method_family = none)]
509        pub unsafe fn eccVersion(&self) -> CIDataMatrixCodeECCVersion;
510
511        #[unsafe(method(initWithPayload:rowCount:columnCount:eccVersion:))]
512        #[unsafe(method_family = init)]
513        pub unsafe fn initWithPayload_rowCount_columnCount_eccVersion(
514            this: Allocated<Self>,
515            error_corrected_payload: &NSData,
516            row_count: NSInteger,
517            column_count: NSInteger,
518            ecc_version: CIDataMatrixCodeECCVersion,
519        ) -> Option<Retained<Self>>;
520
521        #[unsafe(method(descriptorWithPayload:rowCount:columnCount:eccVersion:))]
522        #[unsafe(method_family = none)]
523        pub unsafe fn descriptorWithPayload_rowCount_columnCount_eccVersion(
524            error_corrected_payload: &NSData,
525            row_count: NSInteger,
526            column_count: NSInteger,
527            ecc_version: CIDataMatrixCodeECCVersion,
528        ) -> Option<Retained<Self>>;
529    );
530}
531
532/// Methods declared on superclass `NSObject`.
533impl CIDataMatrixCodeDescriptor {
534    extern_methods!(
535        #[unsafe(method(init))]
536        #[unsafe(method_family = init)]
537        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
538
539        #[unsafe(method(new))]
540        #[unsafe(method_family = new)]
541        pub unsafe fn new() -> Retained<Self>;
542    );
543}
544
545mod private_NSUserActivityCIBarcodeDescriptor {
546    pub trait Sealed {}
547}
548
549/// Category "CIBarcodeDescriptor" on [`NSUserActivity`].
550#[doc(alias = "CIBarcodeDescriptor")]
551pub unsafe trait NSUserActivityCIBarcodeDescriptor:
552    ClassType + Sized + private_NSUserActivityCIBarcodeDescriptor::Sealed
553{
554    extern_methods!(
555        /// The scanned code in the user activity passed in by system scanner.
556        #[unsafe(method(detectedBarcodeDescriptor))]
557        #[unsafe(method_family = none)]
558        unsafe fn detectedBarcodeDescriptor(&self) -> Option<Retained<CIBarcodeDescriptor>>;
559    );
560}
561
562impl private_NSUserActivityCIBarcodeDescriptor::Sealed for NSUserActivity {}
563unsafe impl NSUserActivityCIBarcodeDescriptor for NSUserActivity {}