objc2_core_ml/generated/
MLCustomLayer.rs1use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5use objc2_foundation::*;
6#[cfg(feature = "objc2-metal")]
7#[cfg(not(target_os = "watchos"))]
8use objc2_metal::*;
9
10use crate::*;
11
12extern_protocol!(
13 pub unsafe trait MLCustomLayer {
15 #[unsafe(method(initWithParameterDictionary:error:_))]
19 #[unsafe(method_family = init)]
20 unsafe fn initWithParameterDictionary_error(
21 this: Allocated<Self>,
22 parameters: &NSDictionary<NSString, AnyObject>,
23 ) -> Result<Retained<Self>, Retained<NSError>>;
24
25 #[unsafe(method(setWeightData:error:_))]
26 #[unsafe(method_family = none)]
27 unsafe fn setWeightData_error(
28 &self,
29 weights: &NSArray<NSData>,
30 ) -> Result<(), Retained<NSError>>;
31
32 #[unsafe(method(outputShapesForInputShapes:error:_))]
33 #[unsafe(method_family = none)]
34 unsafe fn outputShapesForInputShapes_error(
35 &self,
36 input_shapes: &NSArray<NSArray<NSNumber>>,
37 ) -> Result<Retained<NSArray<NSArray<NSNumber>>>, Retained<NSError>>;
38
39 #[cfg(feature = "MLMultiArray")]
40 #[unsafe(method(evaluateOnCPUWithInputs:outputs:error:_))]
41 #[unsafe(method_family = none)]
42 unsafe fn evaluateOnCPUWithInputs_outputs_error(
43 &self,
44 inputs: &NSArray<MLMultiArray>,
45 outputs: &NSArray<MLMultiArray>,
46 ) -> Result<(), Retained<NSError>>;
47
48 #[cfg(feature = "objc2-metal")]
49 #[cfg(not(target_os = "watchos"))]
50 #[optional]
57 #[unsafe(method(encodeToCommandBuffer:inputs:outputs:error:_))]
58 #[unsafe(method_family = none)]
59 unsafe fn encodeToCommandBuffer_inputs_outputs_error(
60 &self,
61 command_buffer: &ProtocolObject<dyn MTLCommandBuffer>,
62 inputs: &NSArray<ProtocolObject<dyn MTLTexture>>,
63 outputs: &NSArray<ProtocolObject<dyn MTLTexture>>,
64 ) -> Result<(), Retained<NSError>>;
65 }
66);