objc2_vision/generated/
VNCoreMLRequest.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-core-ml")]
7use objc2_core_ml::*;
8use objc2_foundation::*;
9
10use crate::*;
11
12extern_class!(
13 #[unsafe(super(NSObject))]
17 #[derive(Debug, PartialEq, Eq, Hash)]
18 pub struct VNCoreMLModel;
19);
20
21extern_conformance!(
22 unsafe impl NSObjectProtocol for VNCoreMLModel {}
23);
24
25impl VNCoreMLModel {
26 extern_methods!(
27 #[unsafe(method(init))]
28 #[unsafe(method_family = init)]
29 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
30
31 #[cfg(feature = "objc2-core-ml")]
32 #[unsafe(method(modelForMLModel:error:_))]
40 #[unsafe(method_family = none)]
41 pub unsafe fn modelForMLModel_error(
42 model: &MLModel,
43 ) -> Result<Retained<Self>, Retained<NSError>>;
44
45 #[unsafe(method(inputImageFeatureName))]
47 #[unsafe(method_family = none)]
48 pub unsafe fn inputImageFeatureName(&self) -> Retained<NSString>;
49
50 #[unsafe(method(setInputImageFeatureName:))]
54 #[unsafe(method_family = none)]
55 pub unsafe fn setInputImageFeatureName(&self, input_image_feature_name: &NSString);
56
57 #[cfg(feature = "objc2-core-ml")]
58 #[unsafe(method(featureProvider))]
60 #[unsafe(method_family = none)]
61 pub unsafe fn featureProvider(
62 &self,
63 ) -> Option<Retained<ProtocolObject<dyn MLFeatureProvider>>>;
64
65 #[cfg(feature = "objc2-core-ml")]
66 #[unsafe(method(setFeatureProvider:))]
68 #[unsafe(method_family = none)]
69 pub unsafe fn setFeatureProvider(
70 &self,
71 feature_provider: Option<&ProtocolObject<dyn MLFeatureProvider>>,
72 );
73 );
74}
75
76impl VNCoreMLModel {
78 extern_methods!(
79 #[unsafe(method(new))]
80 #[unsafe(method_family = new)]
81 pub unsafe fn new() -> Retained<Self>;
82 );
83}
84
85extern_class!(
86 #[unsafe(super(VNImageBasedRequest, VNRequest, NSObject))]
91 #[derive(Debug, PartialEq, Eq, Hash)]
92 #[cfg(feature = "VNRequest")]
93 pub struct VNCoreMLRequest;
94);
95
96#[cfg(feature = "VNRequest")]
97extern_conformance!(
98 unsafe impl NSCopying for VNCoreMLRequest {}
99);
100
101#[cfg(feature = "VNRequest")]
102unsafe impl CopyingHelper for VNCoreMLRequest {
103 type Result = Self;
104}
105
106#[cfg(feature = "VNRequest")]
107extern_conformance!(
108 unsafe impl NSObjectProtocol for VNCoreMLRequest {}
109);
110
111#[cfg(feature = "VNRequest")]
112impl VNCoreMLRequest {
113 extern_methods!(
114 #[unsafe(method(model))]
116 #[unsafe(method_family = none)]
117 pub unsafe fn model(&self) -> Retained<VNCoreMLModel>;
118
119 #[cfg(feature = "VNTypes")]
120 #[unsafe(method(imageCropAndScaleOption))]
121 #[unsafe(method_family = none)]
122 pub unsafe fn imageCropAndScaleOption(&self) -> VNImageCropAndScaleOption;
123
124 #[cfg(feature = "VNTypes")]
125 #[unsafe(method(setImageCropAndScaleOption:))]
127 #[unsafe(method_family = none)]
128 pub unsafe fn setImageCropAndScaleOption(
129 &self,
130 image_crop_and_scale_option: VNImageCropAndScaleOption,
131 );
132
133 #[unsafe(method(initWithModel:))]
138 #[unsafe(method_family = init)]
139 pub unsafe fn initWithModel(this: Allocated<Self>, model: &VNCoreMLModel)
140 -> Retained<Self>;
141
142 #[cfg(feature = "block2")]
143 #[unsafe(method(initWithModel:completionHandler:))]
155 #[unsafe(method_family = init)]
156 pub unsafe fn initWithModel_completionHandler(
157 this: Allocated<Self>,
158 model: &VNCoreMLModel,
159 completion_handler: VNRequestCompletionHandler,
160 ) -> Retained<Self>;
161
162 #[unsafe(method(init))]
163 #[unsafe(method_family = init)]
164 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
165
166 #[cfg(feature = "block2")]
167 #[unsafe(method(initWithCompletionHandler:))]
171 #[unsafe(method_family = init)]
172 pub unsafe fn initWithCompletionHandler(
173 this: Allocated<Self>,
174 completion_handler: VNRequestCompletionHandler,
175 ) -> Retained<Self>;
176 );
177}
178
179#[cfg(feature = "VNRequest")]
181impl VNCoreMLRequest {
182 extern_methods!(
183 #[unsafe(method(new))]
184 #[unsafe(method_family = new)]
185 pub unsafe fn new() -> Retained<Self>;
186 );
187}
188
189pub static VNCoreMLRequestRevision1: NSUInteger = 1;