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:))]
52 #[unsafe(method_family = none)]
53 pub unsafe fn setInputImageFeatureName(&self, input_image_feature_name: &NSString);
54
55 #[cfg(feature = "objc2-core-ml")]
56 #[unsafe(method(featureProvider))]
58 #[unsafe(method_family = none)]
59 pub unsafe fn featureProvider(
60 &self,
61 ) -> Option<Retained<ProtocolObject<dyn MLFeatureProvider>>>;
62
63 #[cfg(feature = "objc2-core-ml")]
64 #[unsafe(method(setFeatureProvider:))]
66 #[unsafe(method_family = none)]
67 pub unsafe fn setFeatureProvider(
68 &self,
69 feature_provider: Option<&ProtocolObject<dyn MLFeatureProvider>>,
70 );
71 );
72}
73
74impl VNCoreMLModel {
76 extern_methods!(
77 #[unsafe(method(new))]
78 #[unsafe(method_family = new)]
79 pub unsafe fn new() -> Retained<Self>;
80 );
81}
82
83extern_class!(
84 #[unsafe(super(VNImageBasedRequest, VNRequest, NSObject))]
89 #[derive(Debug, PartialEq, Eq, Hash)]
90 #[cfg(feature = "VNRequest")]
91 pub struct VNCoreMLRequest;
92);
93
94#[cfg(feature = "VNRequest")]
95extern_conformance!(
96 unsafe impl NSCopying for VNCoreMLRequest {}
97);
98
99#[cfg(feature = "VNRequest")]
100unsafe impl CopyingHelper for VNCoreMLRequest {
101 type Result = Self;
102}
103
104#[cfg(feature = "VNRequest")]
105extern_conformance!(
106 unsafe impl NSObjectProtocol for VNCoreMLRequest {}
107);
108
109#[cfg(feature = "VNRequest")]
110impl VNCoreMLRequest {
111 extern_methods!(
112 #[unsafe(method(model))]
114 #[unsafe(method_family = none)]
115 pub unsafe fn model(&self) -> Retained<VNCoreMLModel>;
116
117 #[cfg(feature = "VNTypes")]
118 #[unsafe(method(imageCropAndScaleOption))]
119 #[unsafe(method_family = none)]
120 pub unsafe fn imageCropAndScaleOption(&self) -> VNImageCropAndScaleOption;
121
122 #[cfg(feature = "VNTypes")]
123 #[unsafe(method(setImageCropAndScaleOption:))]
125 #[unsafe(method_family = none)]
126 pub unsafe fn setImageCropAndScaleOption(
127 &self,
128 image_crop_and_scale_option: VNImageCropAndScaleOption,
129 );
130
131 #[unsafe(method(initWithModel:))]
136 #[unsafe(method_family = init)]
137 pub unsafe fn initWithModel(this: Allocated<Self>, model: &VNCoreMLModel)
138 -> Retained<Self>;
139
140 #[cfg(feature = "block2")]
141 #[unsafe(method(initWithModel:completionHandler:))]
149 #[unsafe(method_family = init)]
150 pub unsafe fn initWithModel_completionHandler(
151 this: Allocated<Self>,
152 model: &VNCoreMLModel,
153 completion_handler: VNRequestCompletionHandler,
154 ) -> Retained<Self>;
155
156 #[unsafe(method(init))]
157 #[unsafe(method_family = init)]
158 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
159
160 #[cfg(feature = "block2")]
161 #[unsafe(method(initWithCompletionHandler:))]
162 #[unsafe(method_family = init)]
163 pub unsafe fn initWithCompletionHandler(
164 this: Allocated<Self>,
165 completion_handler: VNRequestCompletionHandler,
166 ) -> Retained<Self>;
167 );
168}
169
170#[cfg(feature = "VNRequest")]
172impl VNCoreMLRequest {
173 extern_methods!(
174 #[unsafe(method(new))]
175 #[unsafe(method_family = new)]
176 pub unsafe fn new() -> Retained<Self>;
177 );
178}
179
180pub static VNCoreMLRequestRevision1: NSUInteger = 1;