objc2_scene_kit/generated/
SCNSkinner.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10extern_class!(
11 #[unsafe(super(NSObject))]
15 #[derive(Debug, PartialEq, Eq, Hash)]
16 pub struct SCNSkinner;
17);
18
19extern_conformance!(
20 unsafe impl NSCoding for SCNSkinner {}
21);
22
23extern_conformance!(
24 unsafe impl NSObjectProtocol for SCNSkinner {}
25);
26
27extern_conformance!(
28 unsafe impl NSSecureCoding for SCNSkinner {}
29);
30
31impl SCNSkinner {
32 extern_methods!(
33 #[cfg(feature = "SCNNode")]
34 #[unsafe(method(skeleton))]
38 #[unsafe(method_family = none)]
39 pub unsafe fn skeleton(&self) -> Option<Retained<SCNNode>>;
40
41 #[cfg(feature = "SCNNode")]
42 #[unsafe(method(setSkeleton:))]
45 #[unsafe(method_family = none)]
46 pub unsafe fn setSkeleton(&self, skeleton: Option<&SCNNode>);
47
48 #[cfg(all(feature = "SCNGeometry", feature = "SCNNode"))]
49 #[unsafe(method(skinnerWithBaseGeometry:bones:boneInverseBindTransforms:boneWeights:boneIndices:))]
61 #[unsafe(method_family = none)]
62 pub unsafe fn skinnerWithBaseGeometry_bones_boneInverseBindTransforms_boneWeights_boneIndices(
63 base_geometry: Option<&SCNGeometry>,
64 bones: &NSArray<SCNNode>,
65 bone_inverse_bind_transforms: Option<&NSArray<NSValue>>,
66 bone_weights: &SCNGeometrySource,
67 bone_indices: &SCNGeometrySource,
68 ) -> Retained<Self>;
69
70 #[cfg(feature = "SCNGeometry")]
71 #[unsafe(method(baseGeometry))]
78 #[unsafe(method_family = none)]
79 pub unsafe fn baseGeometry(&self) -> Option<Retained<SCNGeometry>>;
80
81 #[cfg(feature = "SCNGeometry")]
82 #[unsafe(method(setBaseGeometry:))]
84 #[unsafe(method_family = none)]
85 pub unsafe fn setBaseGeometry(&self, base_geometry: Option<&SCNGeometry>);
86
87 #[cfg(all(feature = "SceneKitTypes", feature = "objc2-quartz-core"))]
88 #[cfg(not(target_os = "watchos"))]
89 #[unsafe(method(baseGeometryBindTransform))]
91 #[unsafe(method_family = none)]
92 pub unsafe fn baseGeometryBindTransform(&self) -> SCNMatrix4;
93
94 #[cfg(all(feature = "SceneKitTypes", feature = "objc2-quartz-core"))]
95 #[cfg(not(target_os = "watchos"))]
96 #[unsafe(method(setBaseGeometryBindTransform:))]
98 #[unsafe(method_family = none)]
99 pub unsafe fn setBaseGeometryBindTransform(&self, base_geometry_bind_transform: SCNMatrix4);
100
101 #[unsafe(method(boneInverseBindTransforms))]
105 #[unsafe(method_family = none)]
106 pub unsafe fn boneInverseBindTransforms(&self) -> Option<Retained<NSArray<NSValue>>>;
107
108 #[cfg(feature = "SCNNode")]
109 #[unsafe(method(bones))]
111 #[unsafe(method_family = none)]
112 pub unsafe fn bones(&self) -> Retained<NSArray<SCNNode>>;
113
114 #[cfg(feature = "SCNGeometry")]
115 #[unsafe(method(boneWeights))]
117 #[unsafe(method_family = none)]
118 pub unsafe fn boneWeights(&self) -> Retained<SCNGeometrySource>;
119
120 #[cfg(feature = "SCNGeometry")]
121 #[unsafe(method(boneIndices))]
123 #[unsafe(method_family = none)]
124 pub unsafe fn boneIndices(&self) -> Retained<SCNGeometrySource>;
125 );
126}
127
128impl SCNSkinner {
130 extern_methods!(
131 #[unsafe(method(init))]
132 #[unsafe(method_family = init)]
133 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
134
135 #[unsafe(method(new))]
136 #[unsafe(method_family = new)]
137 pub unsafe fn new() -> Retained<Self>;
138 );
139}