objc2_metal_performance_shaders/generated/MPSNDArray/
MPSNDArrayStridedSlice.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7use objc2_metal::*;
8
9use crate::*;
10
11extern_class!(
12 #[unsafe(super(
19 MPSNDArrayUnaryKernel,
20 MPSNDArrayMultiaryKernel,
21 MPSNDArrayMultiaryBase,
22 MPSKernel,
23 NSObject
24 ))]
25 #[derive(Debug, PartialEq, Eq, Hash)]
26 #[cfg(all(
27 feature = "MPSCore",
28 feature = "MPSKernel",
29 feature = "MPSNDArrayKernel"
30 ))]
31 pub struct MPSNDArrayStridedSlice;
32);
33
34#[cfg(all(
35 feature = "MPSCore",
36 feature = "MPSKernel",
37 feature = "MPSNDArrayKernel"
38))]
39extern_conformance!(
40 unsafe impl NSCoding for MPSNDArrayStridedSlice {}
41);
42
43#[cfg(all(
44 feature = "MPSCore",
45 feature = "MPSKernel",
46 feature = "MPSNDArrayKernel"
47))]
48extern_conformance!(
49 unsafe impl NSCopying for MPSNDArrayStridedSlice {}
50);
51
52#[cfg(all(
53 feature = "MPSCore",
54 feature = "MPSKernel",
55 feature = "MPSNDArrayKernel"
56))]
57unsafe impl CopyingHelper for MPSNDArrayStridedSlice {
58 type Result = Self;
59}
60
61#[cfg(all(
62 feature = "MPSCore",
63 feature = "MPSKernel",
64 feature = "MPSNDArrayKernel"
65))]
66extern_conformance!(
67 unsafe impl NSObjectProtocol for MPSNDArrayStridedSlice {}
68);
69
70#[cfg(all(
71 feature = "MPSCore",
72 feature = "MPSKernel",
73 feature = "MPSNDArrayKernel"
74))]
75extern_conformance!(
76 unsafe impl NSSecureCoding for MPSNDArrayStridedSlice {}
77);
78
79#[cfg(all(
80 feature = "MPSCore",
81 feature = "MPSKernel",
82 feature = "MPSNDArrayKernel"
83))]
84impl MPSNDArrayStridedSlice {
85 extern_methods!(
86 #[cfg(feature = "MPSNDArrayTypes")]
87 #[unsafe(method(strides))]
89 #[unsafe(method_family = none)]
90 pub unsafe fn strides(&self) -> MPSNDArrayOffsets;
91
92 #[cfg(feature = "MPSNDArrayTypes")]
93 #[unsafe(method(setStrides:))]
95 #[unsafe(method_family = none)]
96 pub unsafe fn setStrides(&self, strides: MPSNDArrayOffsets);
97 );
98}
99
100#[cfg(all(
102 feature = "MPSCore",
103 feature = "MPSKernel",
104 feature = "MPSNDArrayKernel"
105))]
106impl MPSNDArrayStridedSlice {
107 extern_methods!(
108 #[unsafe(method(initWithDevice:))]
109 #[unsafe(method_family = init)]
110 pub unsafe fn initWithDevice(
111 this: Allocated<Self>,
112 device: &ProtocolObject<dyn MTLDevice>,
113 ) -> Retained<Self>;
114
115 #[unsafe(method(initWithDevice:sourceCount:))]
116 #[unsafe(method_family = init)]
117 pub unsafe fn initWithDevice_sourceCount(
118 this: Allocated<Self>,
119 device: &ProtocolObject<dyn MTLDevice>,
120 count: NSUInteger,
121 ) -> Retained<Self>;
122
123 #[unsafe(method(initWithCoder:device:))]
127 #[unsafe(method_family = init)]
128 pub unsafe fn initWithCoder_device(
129 this: Allocated<Self>,
130 coder: &NSCoder,
131 device: &ProtocolObject<dyn MTLDevice>,
132 ) -> Retained<Self>;
133 );
134}
135
136#[cfg(all(
138 feature = "MPSCore",
139 feature = "MPSKernel",
140 feature = "MPSNDArrayKernel"
141))]
142impl MPSNDArrayStridedSlice {
143 extern_methods!(
144 #[unsafe(method(initWithCoder:))]
157 #[unsafe(method_family = init)]
158 pub unsafe fn initWithCoder(
159 this: Allocated<Self>,
160 a_decoder: &NSCoder,
161 ) -> Option<Retained<Self>>;
162 );
163}
164
165#[cfg(all(
167 feature = "MPSCore",
168 feature = "MPSKernel",
169 feature = "MPSNDArrayKernel"
170))]
171impl MPSNDArrayStridedSlice {
172 extern_methods!(
173 #[unsafe(method(init))]
174 #[unsafe(method_family = init)]
175 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
176
177 #[unsafe(method(new))]
178 #[unsafe(method_family = new)]
179 pub unsafe fn new() -> Retained<Self>;
180 );
181}
182
183extern_class!(
184 #[unsafe(super(
191 MPSNDArrayUnaryGradientKernel,
192 MPSNDArrayMultiaryGradientKernel,
193 MPSNDArrayMultiaryBase,
194 MPSKernel,
195 NSObject
196 ))]
197 #[derive(Debug, PartialEq, Eq, Hash)]
198 #[cfg(all(
199 feature = "MPSCore",
200 feature = "MPSKernel",
201 feature = "MPSNDArrayKernel"
202 ))]
203 pub struct MPSNDArrayStridedSliceGradient;
204);
205
206#[cfg(all(
207 feature = "MPSCore",
208 feature = "MPSKernel",
209 feature = "MPSNDArrayKernel"
210))]
211extern_conformance!(
212 unsafe impl NSCoding for MPSNDArrayStridedSliceGradient {}
213);
214
215#[cfg(all(
216 feature = "MPSCore",
217 feature = "MPSKernel",
218 feature = "MPSNDArrayKernel"
219))]
220extern_conformance!(
221 unsafe impl NSCopying for MPSNDArrayStridedSliceGradient {}
222);
223
224#[cfg(all(
225 feature = "MPSCore",
226 feature = "MPSKernel",
227 feature = "MPSNDArrayKernel"
228))]
229unsafe impl CopyingHelper for MPSNDArrayStridedSliceGradient {
230 type Result = Self;
231}
232
233#[cfg(all(
234 feature = "MPSCore",
235 feature = "MPSKernel",
236 feature = "MPSNDArrayKernel"
237))]
238extern_conformance!(
239 unsafe impl NSObjectProtocol for MPSNDArrayStridedSliceGradient {}
240);
241
242#[cfg(all(
243 feature = "MPSCore",
244 feature = "MPSKernel",
245 feature = "MPSNDArrayKernel"
246))]
247extern_conformance!(
248 unsafe impl NSSecureCoding for MPSNDArrayStridedSliceGradient {}
249);
250
251#[cfg(all(
252 feature = "MPSCore",
253 feature = "MPSKernel",
254 feature = "MPSNDArrayKernel"
255))]
256impl MPSNDArrayStridedSliceGradient {
257 extern_methods!();
258}
259
260#[cfg(all(
262 feature = "MPSCore",
263 feature = "MPSKernel",
264 feature = "MPSNDArrayKernel"
265))]
266impl MPSNDArrayStridedSliceGradient {
267 extern_methods!(
268 #[unsafe(method(initWithDevice:))]
269 #[unsafe(method_family = init)]
270 pub unsafe fn initWithDevice(
271 this: Allocated<Self>,
272 device: &ProtocolObject<dyn MTLDevice>,
273 ) -> Retained<Self>;
274
275 #[unsafe(method(initWithDevice:sourceCount:sourceGradientIndex:))]
276 #[unsafe(method_family = init)]
277 pub unsafe fn initWithDevice_sourceCount_sourceGradientIndex(
278 this: Allocated<Self>,
279 device: &ProtocolObject<dyn MTLDevice>,
280 count: NSUInteger,
281 source_gradient_index: NSUInteger,
282 ) -> Retained<Self>;
283
284 #[unsafe(method(initWithCoder:device:))]
288 #[unsafe(method_family = init)]
289 pub unsafe fn initWithCoder_device(
290 this: Allocated<Self>,
291 coder: &NSCoder,
292 device: &ProtocolObject<dyn MTLDevice>,
293 ) -> Retained<Self>;
294 );
295}
296
297#[cfg(all(
299 feature = "MPSCore",
300 feature = "MPSKernel",
301 feature = "MPSNDArrayKernel"
302))]
303impl MPSNDArrayStridedSliceGradient {
304 extern_methods!(
305 #[unsafe(method(initWithDevice:sourceCount:))]
306 #[unsafe(method_family = init)]
307 pub unsafe fn initWithDevice_sourceCount(
308 this: Allocated<Self>,
309 device: &ProtocolObject<dyn MTLDevice>,
310 count: NSUInteger,
311 ) -> Retained<Self>;
312 );
313}
314
315#[cfg(all(
317 feature = "MPSCore",
318 feature = "MPSKernel",
319 feature = "MPSNDArrayKernel"
320))]
321impl MPSNDArrayStridedSliceGradient {
322 extern_methods!(
323 #[unsafe(method(initWithCoder:))]
336 #[unsafe(method_family = init)]
337 pub unsafe fn initWithCoder(
338 this: Allocated<Self>,
339 a_decoder: &NSCoder,
340 ) -> Option<Retained<Self>>;
341 );
342}
343
344#[cfg(all(
346 feature = "MPSCore",
347 feature = "MPSKernel",
348 feature = "MPSNDArrayKernel"
349))]
350impl MPSNDArrayStridedSliceGradient {
351 extern_methods!(
352 #[unsafe(method(init))]
353 #[unsafe(method_family = init)]
354 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
355
356 #[unsafe(method(new))]
357 #[unsafe(method_family = new)]
358 pub unsafe fn new() -> Retained<Self>;
359 );
360}