use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
#[cfg(feature = "objc2-core-foundation")]
use objc2_core_foundation::*;
#[cfg(feature = "objc2-core-graphics")]
use objc2_core_graphics::*;
use objc2_foundation::*;
use crate::*;
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct ICScannerFunctionalUnitType(pub NSUInteger);
impl ICScannerFunctionalUnitType {
#[doc(alias = "ICScannerFunctionalUnitTypeFlatbed")]
pub const Flatbed: Self = Self(0);
#[doc(alias = "ICScannerFunctionalUnitTypePositiveTransparency")]
pub const PositiveTransparency: Self = Self(1);
#[doc(alias = "ICScannerFunctionalUnitTypeNegativeTransparency")]
pub const NegativeTransparency: Self = Self(2);
#[doc(alias = "ICScannerFunctionalUnitTypeDocumentFeeder")]
pub const DocumentFeeder: Self = Self(3);
}
unsafe impl Encode for ICScannerFunctionalUnitType {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for ICScannerFunctionalUnitType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct ICScannerMeasurementUnit(pub NSUInteger);
impl ICScannerMeasurementUnit {
#[doc(alias = "ICScannerMeasurementUnitInches")]
pub const Inches: Self = Self(0);
#[doc(alias = "ICScannerMeasurementUnitCentimeters")]
pub const Centimeters: Self = Self(1);
#[doc(alias = "ICScannerMeasurementUnitPicas")]
pub const Picas: Self = Self(2);
#[doc(alias = "ICScannerMeasurementUnitPoints")]
pub const Points: Self = Self(3);
#[doc(alias = "ICScannerMeasurementUnitTwips")]
pub const Twips: Self = Self(4);
#[doc(alias = "ICScannerMeasurementUnitPixels")]
pub const Pixels: Self = Self(5);
}
unsafe impl Encode for ICScannerMeasurementUnit {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for ICScannerMeasurementUnit {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct ICScannerBitDepth(pub NSUInteger);
impl ICScannerBitDepth {
#[doc(alias = "ICScannerBitDepth1Bit")]
pub const Depth1Bit: Self = Self(1);
#[doc(alias = "ICScannerBitDepth8Bits")]
pub const Depth8Bits: Self = Self(8);
#[doc(alias = "ICScannerBitDepth16Bits")]
pub const Depth16Bits: Self = Self(16);
}
unsafe impl Encode for ICScannerBitDepth {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for ICScannerBitDepth {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct ICScannerColorDataFormatType(pub NSUInteger);
impl ICScannerColorDataFormatType {
#[doc(alias = "ICScannerColorDataFormatTypeChunky")]
pub const Chunky: Self = Self(0);
#[doc(alias = "ICScannerColorDataFormatTypePlanar")]
pub const Planar: Self = Self(1);
}
unsafe impl Encode for ICScannerColorDataFormatType {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for ICScannerColorDataFormatType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct ICScannerPixelDataType(pub NSUInteger);
impl ICScannerPixelDataType {
#[doc(alias = "ICScannerPixelDataTypeBW")]
pub const BW: Self = Self(0);
#[doc(alias = "ICScannerPixelDataTypeGray")]
pub const Gray: Self = Self(1);
#[doc(alias = "ICScannerPixelDataTypeRGB")]
pub const RGB: Self = Self(2);
#[doc(alias = "ICScannerPixelDataTypePalette")]
pub const Palette: Self = Self(3);
#[doc(alias = "ICScannerPixelDataTypeCMY")]
pub const CMY: Self = Self(4);
#[doc(alias = "ICScannerPixelDataTypeCMYK")]
pub const CMYK: Self = Self(5);
#[doc(alias = "ICScannerPixelDataTypeYUV")]
pub const YUV: Self = Self(6);
#[doc(alias = "ICScannerPixelDataTypeYUVK")]
pub const YUVK: Self = Self(7);
#[doc(alias = "ICScannerPixelDataTypeCIEXYZ")]
pub const CIEXYZ: Self = Self(8);
}
unsafe impl Encode for ICScannerPixelDataType {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for ICScannerPixelDataType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct ICScannerDocumentType(pub NSUInteger);
impl ICScannerDocumentType {
#[doc(alias = "ICScannerDocumentTypeDefault")]
pub const TypeDefault: Self = Self(0);
#[doc(alias = "ICScannerDocumentTypeA4")]
pub const TypeA4: Self = Self(1);
#[doc(alias = "ICScannerDocumentTypeB5")]
pub const TypeB5: Self = Self(2);
#[doc(alias = "ICScannerDocumentTypeUSLetter")]
pub const TypeUSLetter: Self = Self(3);
#[doc(alias = "ICScannerDocumentTypeUSLegal")]
pub const TypeUSLegal: Self = Self(4);
#[doc(alias = "ICScannerDocumentTypeA5")]
pub const TypeA5: Self = Self(5);
#[doc(alias = "ICScannerDocumentTypeISOB4")]
pub const TypeISOB4: Self = Self(6);
#[doc(alias = "ICScannerDocumentTypeISOB6")]
pub const TypeISOB6: Self = Self(7);
#[doc(alias = "ICScannerDocumentTypeUSLedger")]
pub const TypeUSLedger: Self = Self(9);
#[doc(alias = "ICScannerDocumentTypeUSExecutive")]
pub const TypeUSExecutive: Self = Self(10);
#[doc(alias = "ICScannerDocumentTypeA3")]
pub const TypeA3: Self = Self(11);
#[doc(alias = "ICScannerDocumentTypeISOB3")]
pub const TypeISOB3: Self = Self(12);
#[doc(alias = "ICScannerDocumentTypeA6")]
pub const TypeA6: Self = Self(13);
#[doc(alias = "ICScannerDocumentTypeC4")]
pub const TypeC4: Self = Self(14);
#[doc(alias = "ICScannerDocumentTypeC5")]
pub const TypeC5: Self = Self(15);
#[doc(alias = "ICScannerDocumentTypeC6")]
pub const TypeC6: Self = Self(16);
#[doc(alias = "ICScannerDocumentType4A0")]
pub const Type4A0: Self = Self(17);
#[doc(alias = "ICScannerDocumentType2A0")]
pub const Type2A0: Self = Self(18);
#[doc(alias = "ICScannerDocumentTypeA0")]
pub const TypeA0: Self = Self(19);
#[doc(alias = "ICScannerDocumentTypeA1")]
pub const TypeA1: Self = Self(20);
#[doc(alias = "ICScannerDocumentTypeA2")]
pub const TypeA2: Self = Self(21);
#[doc(alias = "ICScannerDocumentTypeA7")]
pub const TypeA7: Self = Self(22);
#[doc(alias = "ICScannerDocumentTypeA8")]
pub const TypeA8: Self = Self(23);
#[doc(alias = "ICScannerDocumentTypeA9")]
pub const TypeA9: Self = Self(24);
#[doc(alias = "ICScannerDocumentType10")]
pub const Type10: Self = Self(25);
#[doc(alias = "ICScannerDocumentTypeISOB0")]
pub const TypeISOB0: Self = Self(26);
#[doc(alias = "ICScannerDocumentTypeISOB1")]
pub const TypeISOB1: Self = Self(27);
#[doc(alias = "ICScannerDocumentTypeISOB2")]
pub const TypeISOB2: Self = Self(28);
#[doc(alias = "ICScannerDocumentTypeISOB5")]
pub const TypeISOB5: Self = Self(29);
#[doc(alias = "ICScannerDocumentTypeISOB7")]
pub const TypeISOB7: Self = Self(30);
#[doc(alias = "ICScannerDocumentTypeISOB8")]
pub const TypeISOB8: Self = Self(31);
#[doc(alias = "ICScannerDocumentTypeISOB9")]
pub const TypeISOB9: Self = Self(32);
#[doc(alias = "ICScannerDocumentTypeISOB10")]
pub const TypeISOB10: Self = Self(33);
#[doc(alias = "ICScannerDocumentTypeJISB0")]
pub const TypeJISB0: Self = Self(34);
#[doc(alias = "ICScannerDocumentTypeJISB1")]
pub const TypeJISB1: Self = Self(35);
#[doc(alias = "ICScannerDocumentTypeJISB2")]
pub const TypeJISB2: Self = Self(36);
#[doc(alias = "ICScannerDocumentTypeJISB3")]
pub const TypeJISB3: Self = Self(37);
#[doc(alias = "ICScannerDocumentTypeJISB4")]
pub const TypeJISB4: Self = Self(38);
#[doc(alias = "ICScannerDocumentTypeJISB6")]
pub const TypeJISB6: Self = Self(39);
#[doc(alias = "ICScannerDocumentTypeJISB7")]
pub const TypeJISB7: Self = Self(40);
#[doc(alias = "ICScannerDocumentTypeJISB8")]
pub const TypeJISB8: Self = Self(41);
#[doc(alias = "ICScannerDocumentTypeJISB9")]
pub const TypeJISB9: Self = Self(42);
#[doc(alias = "ICScannerDocumentTypeJISB10")]
pub const TypeJISB10: Self = Self(43);
#[doc(alias = "ICScannerDocumentTypeC0")]
pub const TypeC0: Self = Self(44);
#[doc(alias = "ICScannerDocumentTypeC1")]
pub const TypeC1: Self = Self(45);
#[doc(alias = "ICScannerDocumentTypeC2")]
pub const TypeC2: Self = Self(46);
#[doc(alias = "ICScannerDocumentTypeC3")]
pub const TypeC3: Self = Self(47);
#[doc(alias = "ICScannerDocumentTypeC7")]
pub const TypeC7: Self = Self(48);
#[doc(alias = "ICScannerDocumentTypeC8")]
pub const TypeC8: Self = Self(49);
#[doc(alias = "ICScannerDocumentTypeC9")]
pub const TypeC9: Self = Self(50);
#[doc(alias = "ICScannerDocumentTypeC10")]
pub const TypeC10: Self = Self(51);
#[doc(alias = "ICScannerDocumentTypeUSStatement")]
pub const TypeUSStatement: Self = Self(52);
#[doc(alias = "ICScannerDocumentTypeBusinessCard")]
pub const TypeBusinessCard: Self = Self(53);
#[doc(alias = "ICScannerDocumentTypeE")]
pub const TypeE: Self = Self(60);
#[doc(alias = "ICScannerDocumentType3R")]
pub const Type3R: Self = Self(61);
#[doc(alias = "ICScannerDocumentType4R")]
pub const Type4R: Self = Self(62);
#[doc(alias = "ICScannerDocumentType5R")]
pub const Type5R: Self = Self(63);
#[doc(alias = "ICScannerDocumentType6R")]
pub const Type6R: Self = Self(64);
#[doc(alias = "ICScannerDocumentType8R")]
pub const Type8R: Self = Self(65);
#[doc(alias = "ICScannerDocumentTypeS8R")]
pub const TypeS8R: Self = Self(66);
#[doc(alias = "ICScannerDocumentType10R")]
pub const Type10R: Self = Self(67);
#[doc(alias = "ICScannerDocumentTypeS10R")]
pub const TypeS10R: Self = Self(68);
#[doc(alias = "ICScannerDocumentType11R")]
pub const Type11R: Self = Self(69);
#[doc(alias = "ICScannerDocumentType12R")]
pub const Type12R: Self = Self(70);
#[doc(alias = "ICScannerDocumentTypeS12R")]
pub const TypeS12R: Self = Self(71);
#[doc(alias = "ICScannerDocumentType110")]
pub const Type110: Self = Self(72);
#[doc(alias = "ICScannerDocumentTypeAPSH")]
pub const TypeAPSH: Self = Self(73);
#[doc(alias = "ICScannerDocumentTypeAPSC")]
pub const TypeAPSC: Self = Self(74);
#[doc(alias = "ICScannerDocumentTypeAPSP")]
pub const TypeAPSP: Self = Self(75);
#[doc(alias = "ICScannerDocumentType135")]
pub const Type135: Self = Self(76);
#[doc(alias = "ICScannerDocumentTypeMF")]
pub const TypeMF: Self = Self(77);
#[doc(alias = "ICScannerDocumentTypeLF")]
pub const TypeLF: Self = Self(78);
}
unsafe impl Encode for ICScannerDocumentType {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for ICScannerDocumentType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct ICScannerFunctionalUnitState(pub NSUInteger);
impl ICScannerFunctionalUnitState {
#[doc(alias = "ICScannerFunctionalUnitStateReady")]
pub const Ready: Self = Self(1 << 0);
#[doc(alias = "ICScannerFunctionalUnitStateScanInProgress")]
pub const ScanInProgress: Self = Self(1 << 1);
#[doc(alias = "ICScannerFunctionalUnitStateOverviewScanInProgress")]
pub const OverviewScanInProgress: Self = Self(1 << 2);
}
unsafe impl Encode for ICScannerFunctionalUnitState {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for ICScannerFunctionalUnitState {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct ICScannerFeatureType(pub NSUInteger);
impl ICScannerFeatureType {
#[doc(alias = "ICScannerFeatureTypeEnumeration")]
pub const Enumeration: Self = Self(0);
#[doc(alias = "ICScannerFeatureTypeRange")]
pub const Range: Self = Self(1);
#[doc(alias = "ICScannerFeatureTypeBoolean")]
pub const Boolean: Self = Self(2);
#[doc(alias = "ICScannerFeatureTypeTemplate")]
pub const Template: Self = Self(3);
}
unsafe impl Encode for ICScannerFeatureType {
const ENCODING: Encoding = NSUInteger::ENCODING;
}
unsafe impl RefEncode for ICScannerFeatureType {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFeature;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFeature {}
);
impl ICScannerFeature {
extern_methods!(
#[unsafe(method(type))]
#[unsafe(method_family = none)]
pub unsafe fn r#type(&self) -> ICScannerFeatureType;
#[unsafe(method(internalName))]
#[unsafe(method_family = none)]
pub unsafe fn internalName(&self) -> Option<Retained<NSString>>;
#[unsafe(method(humanReadableName))]
#[unsafe(method_family = none)]
pub unsafe fn humanReadableName(&self) -> Option<Retained<NSString>>;
#[unsafe(method(tooltip))]
#[unsafe(method_family = none)]
pub unsafe fn tooltip(&self) -> Option<Retained<NSString>>;
);
}
impl ICScannerFeature {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(ICScannerFeature, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFeatureEnumeration;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFeatureEnumeration {}
);
impl ICScannerFeatureEnumeration {
extern_methods!(
#[unsafe(method(currentValue))]
#[unsafe(method_family = none)]
pub unsafe fn currentValue(&self) -> Retained<AnyObject>;
#[unsafe(method(setCurrentValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setCurrentValue(&self, current_value: &AnyObject);
#[unsafe(method(defaultValue))]
#[unsafe(method_family = none)]
pub unsafe fn defaultValue(&self) -> Retained<AnyObject>;
#[unsafe(method(values))]
#[unsafe(method_family = none)]
pub unsafe fn values(&self) -> Retained<NSArray<NSNumber>>;
#[unsafe(method(menuItemLabels))]
#[unsafe(method_family = none)]
pub unsafe fn menuItemLabels(&self) -> Retained<NSArray<NSString>>;
#[unsafe(method(menuItemLabelsTooltips))]
#[unsafe(method_family = none)]
pub unsafe fn menuItemLabelsTooltips(&self) -> Retained<NSArray<NSString>>;
);
}
impl ICScannerFeatureEnumeration {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(ICScannerFeature, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFeatureRange;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFeatureRange {}
);
impl ICScannerFeatureRange {
extern_methods!(
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(currentValue))]
#[unsafe(method_family = none)]
pub unsafe fn currentValue(&self) -> CGFloat;
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(setCurrentValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setCurrentValue(&self, current_value: CGFloat);
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(defaultValue))]
#[unsafe(method_family = none)]
pub unsafe fn defaultValue(&self) -> CGFloat;
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(minValue))]
#[unsafe(method_family = none)]
pub unsafe fn minValue(&self) -> CGFloat;
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(maxValue))]
#[unsafe(method_family = none)]
pub unsafe fn maxValue(&self) -> CGFloat;
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(stepSize))]
#[unsafe(method_family = none)]
pub unsafe fn stepSize(&self) -> CGFloat;
);
}
impl ICScannerFeatureRange {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(ICScannerFeature, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFeatureBoolean;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFeatureBoolean {}
);
impl ICScannerFeatureBoolean {
extern_methods!(
#[unsafe(method(value))]
#[unsafe(method_family = none)]
pub unsafe fn value(&self) -> bool;
#[unsafe(method(setValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setValue(&self, value: bool);
);
}
impl ICScannerFeatureBoolean {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(ICScannerFeature, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFeatureTemplate;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFeatureTemplate {}
);
impl ICScannerFeatureTemplate {
extern_methods!(
#[unsafe(method(targets))]
#[unsafe(method_family = none)]
pub unsafe fn targets(&self) -> Retained<NSArray<NSMutableArray>>;
);
}
impl ICScannerFeatureTemplate {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFunctionalUnit;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFunctionalUnit {}
);
impl ICScannerFunctionalUnit {
extern_methods!(
#[unsafe(method(type))]
#[unsafe(method_family = none)]
pub unsafe fn r#type(&self) -> ICScannerFunctionalUnitType;
#[unsafe(method(pixelDataType))]
#[unsafe(method_family = none)]
pub unsafe fn pixelDataType(&self) -> ICScannerPixelDataType;
#[unsafe(method(setPixelDataType:))]
#[unsafe(method_family = none)]
pub unsafe fn setPixelDataType(&self, pixel_data_type: ICScannerPixelDataType);
#[unsafe(method(supportedBitDepths))]
#[unsafe(method_family = none)]
pub unsafe fn supportedBitDepths(&self) -> Retained<NSIndexSet>;
#[unsafe(method(bitDepth))]
#[unsafe(method_family = none)]
pub unsafe fn bitDepth(&self) -> ICScannerBitDepth;
#[unsafe(method(setBitDepth:))]
#[unsafe(method_family = none)]
pub unsafe fn setBitDepth(&self, bit_depth: ICScannerBitDepth);
#[unsafe(method(supportedMeasurementUnits))]
#[unsafe(method_family = none)]
pub unsafe fn supportedMeasurementUnits(&self) -> Retained<NSIndexSet>;
#[unsafe(method(measurementUnit))]
#[unsafe(method_family = none)]
pub unsafe fn measurementUnit(&self) -> ICScannerMeasurementUnit;
#[unsafe(method(setMeasurementUnit:))]
#[unsafe(method_family = none)]
pub unsafe fn setMeasurementUnit(&self, measurement_unit: ICScannerMeasurementUnit);
#[unsafe(method(supportedResolutions))]
#[unsafe(method_family = none)]
pub unsafe fn supportedResolutions(&self) -> Retained<NSIndexSet>;
#[unsafe(method(preferredResolutions))]
#[unsafe(method_family = none)]
pub unsafe fn preferredResolutions(&self) -> Retained<NSIndexSet>;
#[unsafe(method(resolution))]
#[unsafe(method_family = none)]
pub unsafe fn resolution(&self) -> NSUInteger;
#[unsafe(method(setResolution:))]
#[unsafe(method_family = none)]
pub unsafe fn setResolution(&self, resolution: NSUInteger);
#[unsafe(method(nativeXResolution))]
#[unsafe(method_family = none)]
pub unsafe fn nativeXResolution(&self) -> NSUInteger;
#[unsafe(method(nativeYResolution))]
#[unsafe(method_family = none)]
pub unsafe fn nativeYResolution(&self) -> NSUInteger;
#[unsafe(method(supportedScaleFactors))]
#[unsafe(method_family = none)]
pub unsafe fn supportedScaleFactors(&self) -> Retained<NSIndexSet>;
#[unsafe(method(preferredScaleFactors))]
#[unsafe(method_family = none)]
pub unsafe fn preferredScaleFactors(&self) -> Retained<NSIndexSet>;
#[unsafe(method(scaleFactor))]
#[unsafe(method_family = none)]
pub unsafe fn scaleFactor(&self) -> NSUInteger;
#[unsafe(method(setScaleFactor:))]
#[unsafe(method_family = none)]
pub unsafe fn setScaleFactor(&self, scale_factor: NSUInteger);
#[unsafe(method(templates))]
#[unsafe(method_family = none)]
pub unsafe fn templates(&self) -> Retained<NSArray<ICScannerFeatureTemplate>>;
#[unsafe(method(vendorFeatures))]
#[unsafe(method_family = none)]
pub unsafe fn vendorFeatures(&self) -> Option<Retained<NSArray<ICScannerFeature>>>;
#[unsafe(method(physicalSize))]
#[unsafe(method_family = none)]
pub unsafe fn physicalSize(&self) -> NSSize;
#[unsafe(method(scanArea))]
#[unsafe(method_family = none)]
pub unsafe fn scanArea(&self) -> NSRect;
#[unsafe(method(setScanArea:))]
#[unsafe(method_family = none)]
pub unsafe fn setScanArea(&self, scan_area: NSRect);
#[cfg(feature = "ImageCaptureConstants")]
#[unsafe(method(scanAreaOrientation))]
#[unsafe(method_family = none)]
pub unsafe fn scanAreaOrientation(&self) -> ICEXIFOrientationType;
#[cfg(feature = "ImageCaptureConstants")]
#[unsafe(method(setScanAreaOrientation:))]
#[unsafe(method_family = none)]
pub unsafe fn setScanAreaOrientation(&self, scan_area_orientation: ICEXIFOrientationType);
#[unsafe(method(acceptsThresholdForBlackAndWhiteScanning))]
#[unsafe(method_family = none)]
pub unsafe fn acceptsThresholdForBlackAndWhiteScanning(&self) -> bool;
#[unsafe(method(usesThresholdForBlackAndWhiteScanning))]
#[unsafe(method_family = none)]
pub unsafe fn usesThresholdForBlackAndWhiteScanning(&self) -> bool;
#[unsafe(method(setUsesThresholdForBlackAndWhiteScanning:))]
#[unsafe(method_family = none)]
pub unsafe fn setUsesThresholdForBlackAndWhiteScanning(
&self,
uses_threshold_for_black_and_white_scanning: bool,
);
#[unsafe(method(defaultThresholdForBlackAndWhiteScanning))]
#[unsafe(method_family = none)]
pub unsafe fn defaultThresholdForBlackAndWhiteScanning(&self) -> c_uchar;
#[unsafe(method(thresholdForBlackAndWhiteScanning))]
#[unsafe(method_family = none)]
pub unsafe fn thresholdForBlackAndWhiteScanning(&self) -> c_uchar;
#[unsafe(method(setThresholdForBlackAndWhiteScanning:))]
#[unsafe(method_family = none)]
pub unsafe fn setThresholdForBlackAndWhiteScanning(
&self,
threshold_for_black_and_white_scanning: c_uchar,
);
#[unsafe(method(state))]
#[unsafe(method_family = none)]
pub unsafe fn state(&self) -> ICScannerFunctionalUnitState;
#[unsafe(method(scanInProgress))]
#[unsafe(method_family = none)]
pub unsafe fn scanInProgress(&self) -> bool;
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(scanProgressPercentDone))]
#[unsafe(method_family = none)]
pub unsafe fn scanProgressPercentDone(&self) -> CGFloat;
#[unsafe(method(canPerformOverviewScan))]
#[unsafe(method_family = none)]
pub unsafe fn canPerformOverviewScan(&self) -> bool;
#[unsafe(method(overviewScanInProgress))]
#[unsafe(method_family = none)]
pub unsafe fn overviewScanInProgress(&self) -> bool;
#[cfg(feature = "objc2-core-graphics")]
#[unsafe(method(overviewImage))]
#[unsafe(method_family = none)]
pub unsafe fn overviewImage(&self) -> Option<Retained<CGImage>>;
#[unsafe(method(overviewResolution))]
#[unsafe(method_family = none)]
pub unsafe fn overviewResolution(&self) -> NSUInteger;
#[unsafe(method(setOverviewResolution:))]
#[unsafe(method_family = none)]
pub unsafe fn setOverviewResolution(&self, overview_resolution: NSUInteger);
);
}
impl ICScannerFunctionalUnit {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(ICScannerFunctionalUnit, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFunctionalUnitFlatbed;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFunctionalUnitFlatbed {}
);
impl ICScannerFunctionalUnitFlatbed {
extern_methods!(
#[unsafe(method(supportedDocumentTypes))]
#[unsafe(method_family = none)]
pub unsafe fn supportedDocumentTypes(&self) -> Retained<NSIndexSet>;
#[unsafe(method(documentType))]
#[unsafe(method_family = none)]
pub unsafe fn documentType(&self) -> ICScannerDocumentType;
#[unsafe(method(setDocumentType:))]
#[unsafe(method_family = none)]
pub unsafe fn setDocumentType(&self, document_type: ICScannerDocumentType);
#[unsafe(method(documentSize))]
#[unsafe(method_family = none)]
pub unsafe fn documentSize(&self) -> NSSize;
);
}
impl ICScannerFunctionalUnitFlatbed {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(ICScannerFunctionalUnit, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFunctionalUnitPositiveTransparency;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFunctionalUnitPositiveTransparency {}
);
impl ICScannerFunctionalUnitPositiveTransparency {
extern_methods!(
#[unsafe(method(supportedDocumentTypes))]
#[unsafe(method_family = none)]
pub unsafe fn supportedDocumentTypes(&self) -> Retained<NSIndexSet>;
#[unsafe(method(documentType))]
#[unsafe(method_family = none)]
pub unsafe fn documentType(&self) -> ICScannerDocumentType;
#[unsafe(method(setDocumentType:))]
#[unsafe(method_family = none)]
pub unsafe fn setDocumentType(&self, document_type: ICScannerDocumentType);
#[unsafe(method(documentSize))]
#[unsafe(method_family = none)]
pub unsafe fn documentSize(&self) -> NSSize;
);
}
impl ICScannerFunctionalUnitPositiveTransparency {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(ICScannerFunctionalUnit, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFunctionalUnitNegativeTransparency;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFunctionalUnitNegativeTransparency {}
);
impl ICScannerFunctionalUnitNegativeTransparency {
extern_methods!(
#[unsafe(method(supportedDocumentTypes))]
#[unsafe(method_family = none)]
pub unsafe fn supportedDocumentTypes(&self) -> Retained<NSIndexSet>;
#[unsafe(method(documentType))]
#[unsafe(method_family = none)]
pub unsafe fn documentType(&self) -> ICScannerDocumentType;
#[unsafe(method(setDocumentType:))]
#[unsafe(method_family = none)]
pub unsafe fn setDocumentType(&self, document_type: ICScannerDocumentType);
#[unsafe(method(documentSize))]
#[unsafe(method_family = none)]
pub unsafe fn documentSize(&self) -> NSSize;
);
}
impl ICScannerFunctionalUnitNegativeTransparency {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(ICScannerFunctionalUnit, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct ICScannerFunctionalUnitDocumentFeeder;
);
extern_conformance!(
unsafe impl NSObjectProtocol for ICScannerFunctionalUnitDocumentFeeder {}
);
impl ICScannerFunctionalUnitDocumentFeeder {
extern_methods!(
#[unsafe(method(supportedDocumentTypes))]
#[unsafe(method_family = none)]
pub unsafe fn supportedDocumentTypes(&self) -> Retained<NSIndexSet>;
#[unsafe(method(documentType))]
#[unsafe(method_family = none)]
pub unsafe fn documentType(&self) -> ICScannerDocumentType;
#[unsafe(method(setDocumentType:))]
#[unsafe(method_family = none)]
pub unsafe fn setDocumentType(&self, document_type: ICScannerDocumentType);
#[unsafe(method(documentSize))]
#[unsafe(method_family = none)]
pub unsafe fn documentSize(&self) -> NSSize;
#[unsafe(method(supportsDuplexScanning))]
#[unsafe(method_family = none)]
pub unsafe fn supportsDuplexScanning(&self) -> bool;
#[unsafe(method(duplexScanningEnabled))]
#[unsafe(method_family = none)]
pub unsafe fn duplexScanningEnabled(&self) -> bool;
#[unsafe(method(setDuplexScanningEnabled:))]
#[unsafe(method_family = none)]
pub unsafe fn setDuplexScanningEnabled(&self, duplex_scanning_enabled: bool);
#[unsafe(method(documentLoaded))]
#[unsafe(method_family = none)]
pub unsafe fn documentLoaded(&self) -> bool;
#[cfg(feature = "ImageCaptureConstants")]
#[unsafe(method(oddPageOrientation))]
#[unsafe(method_family = none)]
pub unsafe fn oddPageOrientation(&self) -> ICEXIFOrientationType;
#[cfg(feature = "ImageCaptureConstants")]
#[unsafe(method(setOddPageOrientation:))]
#[unsafe(method_family = none)]
pub unsafe fn setOddPageOrientation(&self, odd_page_orientation: ICEXIFOrientationType);
#[cfg(feature = "ImageCaptureConstants")]
#[unsafe(method(evenPageOrientation))]
#[unsafe(method_family = none)]
pub unsafe fn evenPageOrientation(&self) -> ICEXIFOrientationType;
#[cfg(feature = "ImageCaptureConstants")]
#[unsafe(method(setEvenPageOrientation:))]
#[unsafe(method_family = none)]
pub unsafe fn setEvenPageOrientation(&self, even_page_orientation: ICEXIFOrientationType);
#[unsafe(method(reverseFeederPageOrder))]
#[unsafe(method_family = none)]
pub unsafe fn reverseFeederPageOrder(&self) -> bool;
);
}
impl ICScannerFunctionalUnitDocumentFeeder {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}