objc2_image_capture_core/generated/
ICScannerBandData.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    /// [Apple's documentation](https://developer.apple.com/documentation/imagecapturecore/icscannerbanddata?language=objc)
11    #[unsafe(super(NSObject))]
12    #[derive(Debug, PartialEq, Eq, Hash)]
13    pub struct ICScannerBandData;
14);
15
16extern_conformance!(
17    unsafe impl NSObjectProtocol for ICScannerBandData {}
18);
19
20impl ICScannerBandData {
21    extern_methods!(
22        /// Describes the full image width of the banded image.
23        #[unsafe(method(fullImageWidth))]
24        #[unsafe(method_family = none)]
25        pub unsafe fn fullImageWidth(&self) -> NSUInteger;
26
27        /// Describes the full image height of the banded image.
28        #[unsafe(method(fullImageHeight))]
29        #[unsafe(method_family = none)]
30        pub unsafe fn fullImageHeight(&self) -> NSUInteger;
31
32        /// Describes the number of bits per pixel for banded the image.
33        #[unsafe(method(bitsPerPixel))]
34        #[unsafe(method_family = none)]
35        pub unsafe fn bitsPerPixel(&self) -> NSUInteger;
36
37        /// Describes the number of bits per component for the banded image.
38        #[unsafe(method(bitsPerComponent))]
39        #[unsafe(method_family = none)]
40        pub unsafe fn bitsPerComponent(&self) -> NSUInteger;
41
42        /// Describes how many components are contained within the banded image.
43        #[unsafe(method(numComponents))]
44        #[unsafe(method_family = none)]
45        pub unsafe fn numComponents(&self) -> NSUInteger;
46
47        /// Describes if the banded image data is reported in big endian.
48        #[unsafe(method(isBigEndian))]
49        #[unsafe(method_family = none)]
50        pub unsafe fn isBigEndian(&self) -> bool;
51
52        #[cfg(feature = "ICScannerFunctionalUnits")]
53        /// Type of pixel data that is contained in the band.
54        #[unsafe(method(pixelDataType))]
55        #[unsafe(method_family = none)]
56        pub unsafe fn pixelDataType(&self) -> ICScannerPixelDataType;
57
58        /// Returns the path to the color profile matching the banded data.
59        #[unsafe(method(colorSyncProfilePath))]
60        #[unsafe(method_family = none)]
61        pub unsafe fn colorSyncProfilePath(&self) -> Option<Retained<NSString>>;
62
63        /// Descries how many bytes are in each image band row.
64        #[unsafe(method(bytesPerRow))]
65        #[unsafe(method_family = none)]
66        pub unsafe fn bytesPerRow(&self) -> NSUInteger;
67
68        /// Describes the start row of the image band.
69        #[unsafe(method(dataStartRow))]
70        #[unsafe(method_family = none)]
71        pub unsafe fn dataStartRow(&self) -> NSUInteger;
72
73        /// Describes the number of rows contained in the image band.
74        #[unsafe(method(dataNumRows))]
75        #[unsafe(method_family = none)]
76        pub unsafe fn dataNumRows(&self) -> NSUInteger;
77
78        /// Describes the actual data size of the image band buffer.
79        #[unsafe(method(dataSize))]
80        #[unsafe(method_family = none)]
81        pub unsafe fn dataSize(&self) -> NSUInteger;
82
83        /// The pointer to the data buffer object.
84        #[unsafe(method(dataBuffer))]
85        #[unsafe(method_family = none)]
86        pub unsafe fn dataBuffer(&self) -> Option<Retained<NSData>>;
87    );
88}
89
90/// Methods declared on superclass `NSObject`.
91impl ICScannerBandData {
92    extern_methods!(
93        #[unsafe(method(init))]
94        #[unsafe(method_family = init)]
95        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
96
97        #[unsafe(method(new))]
98        #[unsafe(method_family = new)]
99        pub unsafe fn new() -> Retained<Self>;
100    );
101}