objc2_model_io/generated/
MDLAnimatedValueTypes.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10/// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedvalueinterpolation?language=objc)
11// NS_ENUM
12#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct MDLAnimatedValueInterpolation(pub NSUInteger);
15impl MDLAnimatedValueInterpolation {
16    #[doc(alias = "MDLAnimatedValueInterpolationConstant")]
17    pub const Constant: Self = Self(0);
18    #[doc(alias = "MDLAnimatedValueInterpolationLinear")]
19    pub const Linear: Self = Self(1);
20}
21
22unsafe impl Encode for MDLAnimatedValueInterpolation {
23    const ENCODING: Encoding = NSUInteger::ENCODING;
24}
25
26unsafe impl RefEncode for MDLAnimatedValueInterpolation {
27    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
28}
29
30extern_class!(
31    /// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedvalue?language=objc)
32    #[unsafe(super(NSObject))]
33    #[derive(Debug, PartialEq, Eq, Hash)]
34    pub struct MDLAnimatedValue;
35);
36
37unsafe impl NSCopying for MDLAnimatedValue {}
38
39unsafe impl CopyingHelper for MDLAnimatedValue {
40    type Result = Self;
41}
42
43unsafe impl NSObjectProtocol for MDLAnimatedValue {}
44
45impl MDLAnimatedValue {
46    extern_methods!(
47        #[unsafe(method(isAnimated))]
48        #[unsafe(method_family = none)]
49        pub unsafe fn isAnimated(&self) -> bool;
50
51        #[cfg(feature = "MDLTypes")]
52        #[unsafe(method(precision))]
53        #[unsafe(method_family = none)]
54        pub unsafe fn precision(&self) -> MDLDataPrecision;
55
56        #[unsafe(method(timeSampleCount))]
57        #[unsafe(method_family = none)]
58        pub unsafe fn timeSampleCount(&self) -> NSUInteger;
59
60        #[unsafe(method(minimumTime))]
61        #[unsafe(method_family = none)]
62        pub unsafe fn minimumTime(&self) -> NSTimeInterval;
63
64        #[unsafe(method(maximumTime))]
65        #[unsafe(method_family = none)]
66        pub unsafe fn maximumTime(&self) -> NSTimeInterval;
67
68        #[unsafe(method(interpolation))]
69        #[unsafe(method_family = none)]
70        pub unsafe fn interpolation(&self) -> MDLAnimatedValueInterpolation;
71
72        /// Setter for [`interpolation`][Self::interpolation].
73        #[unsafe(method(setInterpolation:))]
74        #[unsafe(method_family = none)]
75        pub unsafe fn setInterpolation(&self, interpolation: MDLAnimatedValueInterpolation);
76
77        #[unsafe(method(keyTimes))]
78        #[unsafe(method_family = none)]
79        pub unsafe fn keyTimes(&self) -> Retained<NSArray<NSNumber>>;
80
81        #[unsafe(method(clear))]
82        #[unsafe(method_family = none)]
83        pub unsafe fn clear(&self);
84
85        #[unsafe(method(getTimes:maxCount:))]
86        #[unsafe(method_family = none)]
87        pub unsafe fn getTimes_maxCount(
88            &self,
89            times_array: NonNull<NSTimeInterval>,
90            max_count: NSUInteger,
91        ) -> NSUInteger;
92    );
93}
94
95/// Methods declared on superclass `NSObject`.
96impl MDLAnimatedValue {
97    extern_methods!(
98        #[unsafe(method(init))]
99        #[unsafe(method_family = init)]
100        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
101
102        #[unsafe(method(new))]
103        #[unsafe(method_family = new)]
104        pub unsafe fn new() -> Retained<Self>;
105    );
106}
107
108extern_class!(
109    /// AUTO-GENERATED FROM CodeGenArray.h
110    ///
111    /// See also [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedscalararray?language=objc)
112    #[unsafe(super(MDLAnimatedValue, NSObject))]
113    #[derive(Debug, PartialEq, Eq, Hash)]
114    pub struct MDLAnimatedScalarArray;
115);
116
117unsafe impl NSCopying for MDLAnimatedScalarArray {}
118
119unsafe impl CopyingHelper for MDLAnimatedScalarArray {
120    type Result = Self;
121}
122
123unsafe impl NSObjectProtocol for MDLAnimatedScalarArray {}
124
125impl MDLAnimatedScalarArray {
126    extern_methods!(
127        #[unsafe(method(elementCount))]
128        #[unsafe(method_family = none)]
129        pub unsafe fn elementCount(&self) -> NSUInteger;
130
131        #[unsafe(method(initWithElementCount:))]
132        #[unsafe(method_family = init)]
133        pub unsafe fn initWithElementCount(
134            this: Allocated<Self>,
135            array_element_count: NSUInteger,
136        ) -> Retained<Self>;
137
138        #[unsafe(method(setFloatArray:count:atTime:))]
139        #[unsafe(method_family = none)]
140        pub unsafe fn setFloatArray_count_atTime(
141            &self,
142            array: NonNull<c_float>,
143            count: NSUInteger,
144            time: NSTimeInterval,
145        );
146
147        #[unsafe(method(setDoubleArray:count:atTime:))]
148        #[unsafe(method_family = none)]
149        pub unsafe fn setDoubleArray_count_atTime(
150            &self,
151            array: NonNull<c_double>,
152            count: NSUInteger,
153            time: NSTimeInterval,
154        );
155
156        #[unsafe(method(getFloatArray:maxCount:atTime:))]
157        #[unsafe(method_family = none)]
158        pub unsafe fn getFloatArray_maxCount_atTime(
159            &self,
160            array: NonNull<c_float>,
161            max_count: NSUInteger,
162            time: NSTimeInterval,
163        ) -> NSUInteger;
164
165        #[unsafe(method(getDoubleArray:maxCount:atTime:))]
166        #[unsafe(method_family = none)]
167        pub unsafe fn getDoubleArray_maxCount_atTime(
168            &self,
169            array: NonNull<c_double>,
170            max_count: NSUInteger,
171            time: NSTimeInterval,
172        ) -> NSUInteger;
173
174        #[unsafe(method(resetWithFloatArray:count:atTimes:count:))]
175        #[unsafe(method_family = none)]
176        pub unsafe fn resetWithFloatArray_count_atTimes_count(
177            &self,
178            values_array: NonNull<c_float>,
179            values_count: NSUInteger,
180            times_array: NonNull<NSTimeInterval>,
181            times_count: NSUInteger,
182        );
183
184        #[unsafe(method(resetWithDoubleArray:count:atTimes:count:))]
185        #[unsafe(method_family = none)]
186        pub unsafe fn resetWithDoubleArray_count_atTimes_count(
187            &self,
188            values_array: NonNull<c_double>,
189            values_count: NSUInteger,
190            times_array: NonNull<NSTimeInterval>,
191            times_count: NSUInteger,
192        );
193
194        #[unsafe(method(getFloatArray:maxCount:))]
195        #[unsafe(method_family = none)]
196        pub unsafe fn getFloatArray_maxCount(
197            &self,
198            values_array: NonNull<c_float>,
199            max_count: NSUInteger,
200        ) -> NSUInteger;
201
202        #[unsafe(method(getDoubleArray:maxCount:))]
203        #[unsafe(method_family = none)]
204        pub unsafe fn getDoubleArray_maxCount(
205            &self,
206            values_array: NonNull<c_double>,
207            max_count: NSUInteger,
208        ) -> NSUInteger;
209    );
210}
211
212/// Methods declared on superclass `NSObject`.
213impl MDLAnimatedScalarArray {
214    extern_methods!(
215        #[unsafe(method(init))]
216        #[unsafe(method_family = init)]
217        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
218
219        #[unsafe(method(new))]
220        #[unsafe(method_family = new)]
221        pub unsafe fn new() -> Retained<Self>;
222    );
223}
224
225extern_class!(
226    /// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedvector3array?language=objc)
227    #[unsafe(super(MDLAnimatedValue, NSObject))]
228    #[derive(Debug, PartialEq, Eq, Hash)]
229    pub struct MDLAnimatedVector3Array;
230);
231
232unsafe impl NSCopying for MDLAnimatedVector3Array {}
233
234unsafe impl CopyingHelper for MDLAnimatedVector3Array {
235    type Result = Self;
236}
237
238unsafe impl NSObjectProtocol for MDLAnimatedVector3Array {}
239
240impl MDLAnimatedVector3Array {
241    extern_methods!(
242        #[unsafe(method(elementCount))]
243        #[unsafe(method_family = none)]
244        pub unsafe fn elementCount(&self) -> NSUInteger;
245
246        #[unsafe(method(initWithElementCount:))]
247        #[unsafe(method_family = init)]
248        pub unsafe fn initWithElementCount(
249            this: Allocated<Self>,
250            array_element_count: NSUInteger,
251        ) -> Retained<Self>;
252    );
253}
254
255/// Methods declared on superclass `NSObject`.
256impl MDLAnimatedVector3Array {
257    extern_methods!(
258        #[unsafe(method(init))]
259        #[unsafe(method_family = init)]
260        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
261
262        #[unsafe(method(new))]
263        #[unsafe(method_family = new)]
264        pub unsafe fn new() -> Retained<Self>;
265    );
266}
267
268extern_class!(
269    /// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedquaternionarray?language=objc)
270    #[unsafe(super(MDLAnimatedValue, NSObject))]
271    #[derive(Debug, PartialEq, Eq, Hash)]
272    pub struct MDLAnimatedQuaternionArray;
273);
274
275unsafe impl NSCopying for MDLAnimatedQuaternionArray {}
276
277unsafe impl CopyingHelper for MDLAnimatedQuaternionArray {
278    type Result = Self;
279}
280
281unsafe impl NSObjectProtocol for MDLAnimatedQuaternionArray {}
282
283impl MDLAnimatedQuaternionArray {
284    extern_methods!(
285        #[unsafe(method(elementCount))]
286        #[unsafe(method_family = none)]
287        pub unsafe fn elementCount(&self) -> NSUInteger;
288
289        #[unsafe(method(initWithElementCount:))]
290        #[unsafe(method_family = init)]
291        pub unsafe fn initWithElementCount(
292            this: Allocated<Self>,
293            array_element_count: NSUInteger,
294        ) -> Retained<Self>;
295    );
296}
297
298/// Methods declared on superclass `NSObject`.
299impl MDLAnimatedQuaternionArray {
300    extern_methods!(
301        #[unsafe(method(init))]
302        #[unsafe(method_family = init)]
303        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
304
305        #[unsafe(method(new))]
306        #[unsafe(method_family = new)]
307        pub unsafe fn new() -> Retained<Self>;
308    );
309}
310
311extern_class!(
312    /// AUTO-GENERATED FROM CodeGen.h
313    ///
314    /// See also [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedscalar?language=objc)
315    #[unsafe(super(MDLAnimatedValue, NSObject))]
316    #[derive(Debug, PartialEq, Eq, Hash)]
317    pub struct MDLAnimatedScalar;
318);
319
320unsafe impl NSCopying for MDLAnimatedScalar {}
321
322unsafe impl CopyingHelper for MDLAnimatedScalar {
323    type Result = Self;
324}
325
326unsafe impl NSObjectProtocol for MDLAnimatedScalar {}
327
328impl MDLAnimatedScalar {
329    extern_methods!(
330        #[unsafe(method(setFloat:atTime:))]
331        #[unsafe(method_family = none)]
332        pub unsafe fn setFloat_atTime(&self, value: c_float, time: NSTimeInterval);
333
334        #[unsafe(method(setDouble:atTime:))]
335        #[unsafe(method_family = none)]
336        pub unsafe fn setDouble_atTime(&self, value: c_double, time: NSTimeInterval);
337
338        #[unsafe(method(floatAtTime:))]
339        #[unsafe(method_family = none)]
340        pub unsafe fn floatAtTime(&self, time: NSTimeInterval) -> c_float;
341
342        #[unsafe(method(doubleAtTime:))]
343        #[unsafe(method_family = none)]
344        pub unsafe fn doubleAtTime(&self, time: NSTimeInterval) -> c_double;
345
346        #[unsafe(method(resetWithFloatArray:atTimes:count:))]
347        #[unsafe(method_family = none)]
348        pub unsafe fn resetWithFloatArray_atTimes_count(
349            &self,
350            values_array: NonNull<c_float>,
351            times_array: NonNull<NSTimeInterval>,
352            count: NSUInteger,
353        );
354
355        #[unsafe(method(resetWithDoubleArray:atTimes:count:))]
356        #[unsafe(method_family = none)]
357        pub unsafe fn resetWithDoubleArray_atTimes_count(
358            &self,
359            values_array: NonNull<c_double>,
360            times_array: NonNull<NSTimeInterval>,
361            count: NSUInteger,
362        );
363
364        #[unsafe(method(getFloatArray:maxCount:))]
365        #[unsafe(method_family = none)]
366        pub unsafe fn getFloatArray_maxCount(
367            &self,
368            values_array: NonNull<c_float>,
369            max_count: NSUInteger,
370        ) -> NSUInteger;
371
372        #[unsafe(method(getDoubleArray:maxCount:))]
373        #[unsafe(method_family = none)]
374        pub unsafe fn getDoubleArray_maxCount(
375            &self,
376            values_array: NonNull<c_double>,
377            max_count: NSUInteger,
378        ) -> NSUInteger;
379    );
380}
381
382/// Methods declared on superclass `NSObject`.
383impl MDLAnimatedScalar {
384    extern_methods!(
385        #[unsafe(method(init))]
386        #[unsafe(method_family = init)]
387        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
388
389        #[unsafe(method(new))]
390        #[unsafe(method_family = new)]
391        pub unsafe fn new() -> Retained<Self>;
392    );
393}
394
395extern_class!(
396    /// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedvector2?language=objc)
397    #[unsafe(super(MDLAnimatedValue, NSObject))]
398    #[derive(Debug, PartialEq, Eq, Hash)]
399    pub struct MDLAnimatedVector2;
400);
401
402unsafe impl NSCopying for MDLAnimatedVector2 {}
403
404unsafe impl CopyingHelper for MDLAnimatedVector2 {
405    type Result = Self;
406}
407
408unsafe impl NSObjectProtocol for MDLAnimatedVector2 {}
409
410impl MDLAnimatedVector2 {
411    extern_methods!();
412}
413
414/// Methods declared on superclass `NSObject`.
415impl MDLAnimatedVector2 {
416    extern_methods!(
417        #[unsafe(method(init))]
418        #[unsafe(method_family = init)]
419        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
420
421        #[unsafe(method(new))]
422        #[unsafe(method_family = new)]
423        pub unsafe fn new() -> Retained<Self>;
424    );
425}
426
427extern_class!(
428    /// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedvector3?language=objc)
429    #[unsafe(super(MDLAnimatedValue, NSObject))]
430    #[derive(Debug, PartialEq, Eq, Hash)]
431    pub struct MDLAnimatedVector3;
432);
433
434unsafe impl NSCopying for MDLAnimatedVector3 {}
435
436unsafe impl CopyingHelper for MDLAnimatedVector3 {
437    type Result = Self;
438}
439
440unsafe impl NSObjectProtocol for MDLAnimatedVector3 {}
441
442impl MDLAnimatedVector3 {
443    extern_methods!();
444}
445
446/// Methods declared on superclass `NSObject`.
447impl MDLAnimatedVector3 {
448    extern_methods!(
449        #[unsafe(method(init))]
450        #[unsafe(method_family = init)]
451        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
452
453        #[unsafe(method(new))]
454        #[unsafe(method_family = new)]
455        pub unsafe fn new() -> Retained<Self>;
456    );
457}
458
459extern_class!(
460    /// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedvector4?language=objc)
461    #[unsafe(super(MDLAnimatedValue, NSObject))]
462    #[derive(Debug, PartialEq, Eq, Hash)]
463    pub struct MDLAnimatedVector4;
464);
465
466unsafe impl NSCopying for MDLAnimatedVector4 {}
467
468unsafe impl CopyingHelper for MDLAnimatedVector4 {
469    type Result = Self;
470}
471
472unsafe impl NSObjectProtocol for MDLAnimatedVector4 {}
473
474impl MDLAnimatedVector4 {
475    extern_methods!();
476}
477
478/// Methods declared on superclass `NSObject`.
479impl MDLAnimatedVector4 {
480    extern_methods!(
481        #[unsafe(method(init))]
482        #[unsafe(method_family = init)]
483        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
484
485        #[unsafe(method(new))]
486        #[unsafe(method_family = new)]
487        pub unsafe fn new() -> Retained<Self>;
488    );
489}
490
491extern_class!(
492    /// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedquaternion?language=objc)
493    #[unsafe(super(MDLAnimatedValue, NSObject))]
494    #[derive(Debug, PartialEq, Eq, Hash)]
495    pub struct MDLAnimatedQuaternion;
496);
497
498unsafe impl NSCopying for MDLAnimatedQuaternion {}
499
500unsafe impl CopyingHelper for MDLAnimatedQuaternion {
501    type Result = Self;
502}
503
504unsafe impl NSObjectProtocol for MDLAnimatedQuaternion {}
505
506impl MDLAnimatedQuaternion {
507    extern_methods!();
508}
509
510/// Methods declared on superclass `NSObject`.
511impl MDLAnimatedQuaternion {
512    extern_methods!(
513        #[unsafe(method(init))]
514        #[unsafe(method_family = init)]
515        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
516
517        #[unsafe(method(new))]
518        #[unsafe(method_family = new)]
519        pub unsafe fn new() -> Retained<Self>;
520    );
521}
522
523extern_class!(
524    /// [Apple's documentation](https://developer.apple.com/documentation/modelio/mdlanimatedmatrix4x4?language=objc)
525    #[unsafe(super(MDLAnimatedValue, NSObject))]
526    #[derive(Debug, PartialEq, Eq, Hash)]
527    pub struct MDLAnimatedMatrix4x4;
528);
529
530unsafe impl NSCopying for MDLAnimatedMatrix4x4 {}
531
532unsafe impl CopyingHelper for MDLAnimatedMatrix4x4 {
533    type Result = Self;
534}
535
536unsafe impl NSObjectProtocol for MDLAnimatedMatrix4x4 {}
537
538impl MDLAnimatedMatrix4x4 {
539    extern_methods!();
540}
541
542/// Methods declared on superclass `NSObject`.
543impl MDLAnimatedMatrix4x4 {
544    extern_methods!(
545        #[unsafe(method(init))]
546        #[unsafe(method_family = init)]
547        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
548
549        #[unsafe(method(new))]
550        #[unsafe(method_family = new)]
551        pub unsafe fn new() -> Retained<Self>;
552    );
553}