objc2_sprite_kit/generated/
SKPhysicsBody.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-core-foundation")]
7use objc2_core_foundation::*;
8#[cfg(feature = "objc2-core-graphics")]
9use objc2_core_graphics::*;
10use objc2_foundation::*;
11
12use crate::*;
13
14extern_class!(
15 #[unsafe(super(NSObject))]
21 #[derive(Debug, PartialEq, Eq, Hash)]
22 pub struct SKPhysicsBody;
23);
24
25unsafe impl NSCoding for SKPhysicsBody {}
26
27unsafe impl NSCopying for SKPhysicsBody {}
28
29unsafe impl CopyingHelper for SKPhysicsBody {
30 type Result = Self;
31}
32
33unsafe impl NSObjectProtocol for SKPhysicsBody {}
34
35unsafe impl NSSecureCoding for SKPhysicsBody {}
36
37impl SKPhysicsBody {
38 extern_methods!(
39 #[cfg(feature = "objc2-core-foundation")]
40 #[unsafe(method(bodyWithCircleOfRadius:))]
44 #[unsafe(method_family = none)]
45 pub unsafe fn bodyWithCircleOfRadius(r: CGFloat) -> Retained<SKPhysicsBody>;
46
47 #[cfg(feature = "objc2-core-foundation")]
48 #[unsafe(method(bodyWithCircleOfRadius:center:))]
52 #[unsafe(method_family = none)]
53 pub unsafe fn bodyWithCircleOfRadius_center(
54 r: CGFloat,
55 center: CGPoint,
56 ) -> Retained<SKPhysicsBody>;
57
58 #[cfg(feature = "objc2-core-foundation")]
59 #[unsafe(method(bodyWithRectangleOfSize:))]
63 #[unsafe(method_family = none)]
64 pub unsafe fn bodyWithRectangleOfSize(s: CGSize) -> Retained<SKPhysicsBody>;
65
66 #[cfg(feature = "objc2-core-foundation")]
67 #[unsafe(method(bodyWithRectangleOfSize:center:))]
71 #[unsafe(method_family = none)]
72 pub unsafe fn bodyWithRectangleOfSize_center(
73 s: CGSize,
74 center: CGPoint,
75 ) -> Retained<SKPhysicsBody>;
76
77 #[cfg(feature = "objc2-core-graphics")]
78 #[unsafe(method(bodyWithPolygonFromPath:))]
82 #[unsafe(method_family = none)]
83 pub unsafe fn bodyWithPolygonFromPath(path: &CGPath) -> Retained<SKPhysicsBody>;
84
85 #[cfg(feature = "objc2-core-foundation")]
86 #[unsafe(method(bodyWithEdgeFromPoint:toPoint:))]
92 #[unsafe(method_family = none)]
93 pub unsafe fn bodyWithEdgeFromPoint_toPoint(
94 p1: CGPoint,
95 p2: CGPoint,
96 ) -> Retained<SKPhysicsBody>;
97
98 #[cfg(feature = "objc2-core-graphics")]
99 #[unsafe(method(bodyWithEdgeChainFromPath:))]
103 #[unsafe(method_family = none)]
104 pub unsafe fn bodyWithEdgeChainFromPath(path: &CGPath) -> Retained<SKPhysicsBody>;
105
106 #[cfg(feature = "objc2-core-graphics")]
107 #[unsafe(method(bodyWithEdgeLoopFromPath:))]
111 #[unsafe(method_family = none)]
112 pub unsafe fn bodyWithEdgeLoopFromPath(path: &CGPath) -> Retained<SKPhysicsBody>;
113
114 #[cfg(feature = "objc2-core-foundation")]
115 #[unsafe(method(bodyWithEdgeLoopFromRect:))]
119 #[unsafe(method_family = none)]
120 pub unsafe fn bodyWithEdgeLoopFromRect(rect: CGRect) -> Retained<SKPhysicsBody>;
121
122 #[cfg(all(feature = "SKTexture", feature = "objc2-core-foundation"))]
123 #[unsafe(method(bodyWithTexture:size:))]
129 #[unsafe(method_family = none)]
130 pub unsafe fn bodyWithTexture_size(
131 texture: &SKTexture,
132 size: CGSize,
133 ) -> Retained<SKPhysicsBody>;
134
135 #[cfg(all(feature = "SKTexture", feature = "objc2-core-foundation"))]
136 #[unsafe(method(bodyWithTexture:alphaThreshold:size:))]
144 #[unsafe(method_family = none)]
145 pub unsafe fn bodyWithTexture_alphaThreshold_size(
146 texture: &SKTexture,
147 alpha_threshold: c_float,
148 size: CGSize,
149 ) -> Retained<SKPhysicsBody>;
150
151 #[unsafe(method(bodyWithBodies:))]
153 #[unsafe(method_family = none)]
154 pub unsafe fn bodyWithBodies(bodies: &NSArray<SKPhysicsBody>) -> Retained<SKPhysicsBody>;
155
156 #[unsafe(method(isDynamic))]
157 #[unsafe(method_family = none)]
158 pub unsafe fn isDynamic(&self) -> bool;
159
160 #[unsafe(method(setDynamic:))]
162 #[unsafe(method_family = none)]
163 pub unsafe fn setDynamic(&self, dynamic: bool);
164
165 #[unsafe(method(usesPreciseCollisionDetection))]
166 #[unsafe(method_family = none)]
167 pub unsafe fn usesPreciseCollisionDetection(&self) -> bool;
168
169 #[unsafe(method(setUsesPreciseCollisionDetection:))]
171 #[unsafe(method_family = none)]
172 pub unsafe fn setUsesPreciseCollisionDetection(
173 &self,
174 uses_precise_collision_detection: bool,
175 );
176
177 #[unsafe(method(allowsRotation))]
178 #[unsafe(method_family = none)]
179 pub unsafe fn allowsRotation(&self) -> bool;
180
181 #[unsafe(method(setAllowsRotation:))]
183 #[unsafe(method_family = none)]
184 pub unsafe fn setAllowsRotation(&self, allows_rotation: bool);
185
186 #[unsafe(method(pinned))]
187 #[unsafe(method_family = none)]
188 pub unsafe fn pinned(&self) -> bool;
189
190 #[unsafe(method(setPinned:))]
192 #[unsafe(method_family = none)]
193 pub unsafe fn setPinned(&self, pinned: bool);
194
195 #[unsafe(method(isResting))]
199 #[unsafe(method_family = none)]
200 pub unsafe fn isResting(&self) -> bool;
201
202 #[unsafe(method(setResting:))]
204 #[unsafe(method_family = none)]
205 pub unsafe fn setResting(&self, resting: bool);
206
207 #[cfg(feature = "objc2-core-foundation")]
208 #[unsafe(method(friction))]
210 #[unsafe(method_family = none)]
211 pub unsafe fn friction(&self) -> CGFloat;
212
213 #[cfg(feature = "objc2-core-foundation")]
214 #[unsafe(method(setFriction:))]
216 #[unsafe(method_family = none)]
217 pub unsafe fn setFriction(&self, friction: CGFloat);
218
219 #[cfg(feature = "objc2-core-foundation")]
220 #[unsafe(method(charge))]
224 #[unsafe(method_family = none)]
225 pub unsafe fn charge(&self) -> CGFloat;
226
227 #[cfg(feature = "objc2-core-foundation")]
228 #[unsafe(method(setCharge:))]
230 #[unsafe(method_family = none)]
231 pub unsafe fn setCharge(&self, charge: CGFloat);
232
233 #[cfg(feature = "objc2-core-foundation")]
234 #[unsafe(method(restitution))]
236 #[unsafe(method_family = none)]
237 pub unsafe fn restitution(&self) -> CGFloat;
238
239 #[cfg(feature = "objc2-core-foundation")]
240 #[unsafe(method(setRestitution:))]
242 #[unsafe(method_family = none)]
243 pub unsafe fn setRestitution(&self, restitution: CGFloat);
244
245 #[cfg(feature = "objc2-core-foundation")]
246 #[unsafe(method(linearDamping))]
250 #[unsafe(method_family = none)]
251 pub unsafe fn linearDamping(&self) -> CGFloat;
252
253 #[cfg(feature = "objc2-core-foundation")]
254 #[unsafe(method(setLinearDamping:))]
256 #[unsafe(method_family = none)]
257 pub unsafe fn setLinearDamping(&self, linear_damping: CGFloat);
258
259 #[cfg(feature = "objc2-core-foundation")]
260 #[unsafe(method(angularDamping))]
262 #[unsafe(method_family = none)]
263 pub unsafe fn angularDamping(&self) -> CGFloat;
264
265 #[cfg(feature = "objc2-core-foundation")]
266 #[unsafe(method(setAngularDamping:))]
268 #[unsafe(method_family = none)]
269 pub unsafe fn setAngularDamping(&self, angular_damping: CGFloat);
270
271 #[cfg(feature = "objc2-core-foundation")]
272 #[unsafe(method(density))]
276 #[unsafe(method_family = none)]
277 pub unsafe fn density(&self) -> CGFloat;
278
279 #[cfg(feature = "objc2-core-foundation")]
280 #[unsafe(method(setDensity:))]
282 #[unsafe(method_family = none)]
283 pub unsafe fn setDensity(&self, density: CGFloat);
284
285 #[cfg(feature = "objc2-core-foundation")]
286 #[unsafe(method(mass))]
290 #[unsafe(method_family = none)]
291 pub unsafe fn mass(&self) -> CGFloat;
292
293 #[cfg(feature = "objc2-core-foundation")]
294 #[unsafe(method(setMass:))]
296 #[unsafe(method_family = none)]
297 pub unsafe fn setMass(&self, mass: CGFloat);
298
299 #[cfg(feature = "objc2-core-foundation")]
300 #[unsafe(method(area))]
304 #[unsafe(method_family = none)]
305 pub unsafe fn area(&self) -> CGFloat;
306
307 #[unsafe(method(affectedByGravity))]
311 #[unsafe(method_family = none)]
312 pub unsafe fn affectedByGravity(&self) -> bool;
313
314 #[unsafe(method(setAffectedByGravity:))]
316 #[unsafe(method_family = none)]
317 pub unsafe fn setAffectedByGravity(&self, affected_by_gravity: bool);
318
319 #[unsafe(method(fieldBitMask))]
322 #[unsafe(method_family = none)]
323 pub unsafe fn fieldBitMask(&self) -> u32;
324
325 #[unsafe(method(setFieldBitMask:))]
327 #[unsafe(method_family = none)]
328 pub unsafe fn setFieldBitMask(&self, field_bit_mask: u32);
329
330 #[unsafe(method(categoryBitMask))]
332 #[unsafe(method_family = none)]
333 pub unsafe fn categoryBitMask(&self) -> u32;
334
335 #[unsafe(method(setCategoryBitMask:))]
337 #[unsafe(method_family = none)]
338 pub unsafe fn setCategoryBitMask(&self, category_bit_mask: u32);
339
340 #[unsafe(method(collisionBitMask))]
342 #[unsafe(method_family = none)]
343 pub unsafe fn collisionBitMask(&self) -> u32;
344
345 #[unsafe(method(setCollisionBitMask:))]
347 #[unsafe(method_family = none)]
348 pub unsafe fn setCollisionBitMask(&self, collision_bit_mask: u32);
349
350 #[unsafe(method(contactTestBitMask))]
352 #[unsafe(method_family = none)]
353 pub unsafe fn contactTestBitMask(&self) -> u32;
354
355 #[unsafe(method(setContactTestBitMask:))]
357 #[unsafe(method_family = none)]
358 pub unsafe fn setContactTestBitMask(&self, contact_test_bit_mask: u32);
359
360 #[cfg(feature = "SKPhysicsJoint")]
361 #[unsafe(method(joints))]
362 #[unsafe(method_family = none)]
363 pub unsafe fn joints(&self) -> Retained<NSArray<SKPhysicsJoint>>;
364
365 #[cfg(all(feature = "SKNode", feature = "objc2-app-kit"))]
366 #[cfg(target_os = "macos")]
367 #[unsafe(method(node))]
369 #[unsafe(method_family = none)]
370 pub unsafe fn node(&self, mtm: MainThreadMarker) -> Option<Retained<SKNode>>;
371
372 #[cfg(feature = "objc2-core-foundation")]
373 #[unsafe(method(velocity))]
374 #[unsafe(method_family = none)]
375 pub unsafe fn velocity(&self) -> CGVector;
376
377 #[cfg(feature = "objc2-core-foundation")]
378 #[unsafe(method(setVelocity:))]
380 #[unsafe(method_family = none)]
381 pub unsafe fn setVelocity(&self, velocity: CGVector);
382
383 #[cfg(feature = "objc2-core-foundation")]
384 #[unsafe(method(angularVelocity))]
385 #[unsafe(method_family = none)]
386 pub unsafe fn angularVelocity(&self) -> CGFloat;
387
388 #[cfg(feature = "objc2-core-foundation")]
389 #[unsafe(method(setAngularVelocity:))]
391 #[unsafe(method_family = none)]
392 pub unsafe fn setAngularVelocity(&self, angular_velocity: CGFloat);
393
394 #[cfg(feature = "objc2-core-foundation")]
395 #[unsafe(method(applyForce:))]
396 #[unsafe(method_family = none)]
397 pub unsafe fn applyForce(&self, force: CGVector);
398
399 #[cfg(feature = "objc2-core-foundation")]
400 #[unsafe(method(applyForce:atPoint:))]
401 #[unsafe(method_family = none)]
402 pub unsafe fn applyForce_atPoint(&self, force: CGVector, point: CGPoint);
403
404 #[cfg(feature = "objc2-core-foundation")]
405 #[unsafe(method(applyTorque:))]
406 #[unsafe(method_family = none)]
407 pub unsafe fn applyTorque(&self, torque: CGFloat);
408
409 #[cfg(feature = "objc2-core-foundation")]
410 #[unsafe(method(applyImpulse:))]
411 #[unsafe(method_family = none)]
412 pub unsafe fn applyImpulse(&self, impulse: CGVector);
413
414 #[cfg(feature = "objc2-core-foundation")]
415 #[unsafe(method(applyImpulse:atPoint:))]
416 #[unsafe(method_family = none)]
417 pub unsafe fn applyImpulse_atPoint(&self, impulse: CGVector, point: CGPoint);
418
419 #[cfg(feature = "objc2-core-foundation")]
420 #[unsafe(method(applyAngularImpulse:))]
421 #[unsafe(method_family = none)]
422 pub unsafe fn applyAngularImpulse(&self, impulse: CGFloat);
423
424 #[unsafe(method(allContactedBodies))]
425 #[unsafe(method_family = none)]
426 pub unsafe fn allContactedBodies(&self) -> Retained<NSArray<SKPhysicsBody>>;
427 );
428}
429
430impl SKPhysicsBody {
432 extern_methods!(
433 #[unsafe(method(init))]
434 #[unsafe(method_family = init)]
435 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
436
437 #[unsafe(method(new))]
438 #[unsafe(method_family = new)]
439 pub unsafe fn new() -> Retained<Self>;
440 );
441}