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:))]
46 #[unsafe(method_family = none)]
47 pub unsafe fn setSkeleton(&self, skeleton: Option<&SCNNode>);
48
49 #[cfg(all(feature = "SCNGeometry", feature = "SCNNode"))]
50 #[unsafe(method(skinnerWithBaseGeometry:bones:boneInverseBindTransforms:boneWeights:boneIndices:))]
62 #[unsafe(method_family = none)]
63 pub unsafe fn skinnerWithBaseGeometry_bones_boneInverseBindTransforms_boneWeights_boneIndices(
64 base_geometry: Option<&SCNGeometry>,
65 bones: &NSArray<SCNNode>,
66 bone_inverse_bind_transforms: Option<&NSArray<NSValue>>,
67 bone_weights: &SCNGeometrySource,
68 bone_indices: &SCNGeometrySource,
69 ) -> Retained<Self>;
70
71 #[cfg(feature = "SCNGeometry")]
72 #[unsafe(method(baseGeometry))]
79 #[unsafe(method_family = none)]
80 pub unsafe fn baseGeometry(&self) -> Option<Retained<SCNGeometry>>;
81
82 #[cfg(feature = "SCNGeometry")]
83 #[unsafe(method(setBaseGeometry:))]
85 #[unsafe(method_family = none)]
86 pub unsafe fn setBaseGeometry(&self, base_geometry: Option<&SCNGeometry>);
87
88 #[cfg(all(feature = "SceneKitTypes", feature = "objc2-quartz-core"))]
89 #[cfg(not(target_os = "watchos"))]
90 #[unsafe(method(baseGeometryBindTransform))]
92 #[unsafe(method_family = none)]
93 pub unsafe fn baseGeometryBindTransform(&self) -> SCNMatrix4;
94
95 #[cfg(all(feature = "SceneKitTypes", feature = "objc2-quartz-core"))]
96 #[cfg(not(target_os = "watchos"))]
97 #[unsafe(method(setBaseGeometryBindTransform:))]
99 #[unsafe(method_family = none)]
100 pub unsafe fn setBaseGeometryBindTransform(&self, base_geometry_bind_transform: SCNMatrix4);
101
102 #[unsafe(method(boneInverseBindTransforms))]
106 #[unsafe(method_family = none)]
107 pub unsafe fn boneInverseBindTransforms(&self) -> Option<Retained<NSArray<NSValue>>>;
108
109 #[cfg(feature = "SCNNode")]
110 #[unsafe(method(bones))]
112 #[unsafe(method_family = none)]
113 pub unsafe fn bones(&self) -> Retained<NSArray<SCNNode>>;
114
115 #[cfg(feature = "SCNGeometry")]
116 #[unsafe(method(boneWeights))]
118 #[unsafe(method_family = none)]
119 pub unsafe fn boneWeights(&self) -> Retained<SCNGeometrySource>;
120
121 #[cfg(feature = "SCNGeometry")]
122 #[unsafe(method(boneIndices))]
124 #[unsafe(method_family = none)]
125 pub unsafe fn boneIndices(&self) -> Retained<SCNGeometrySource>;
126 );
127}
128
129impl SCNSkinner {
131 extern_methods!(
132 #[unsafe(method(init))]
133 #[unsafe(method_family = init)]
134 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
135
136 #[unsafe(method(new))]
137 #[unsafe(method_family = new)]
138 pub unsafe fn new() -> Retained<Self>;
139 );
140}