objc2_sprite_kit/generated/
SKTileSet.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6#[cfg(feature = "objc2-core-foundation")]
7use objc2_core_foundation::*;
8use objc2_foundation::*;
9
10use crate::*;
11
12#[repr(transparent)]
17#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
18pub struct SKTileSetType(pub NSUInteger);
19impl SKTileSetType {
20 #[doc(alias = "SKTileSetTypeGrid")]
21 pub const Grid: Self = Self(0);
22 #[doc(alias = "SKTileSetTypeIsometric")]
23 pub const Isometric: Self = Self(1);
24 #[doc(alias = "SKTileSetTypeHexagonalFlat")]
25 pub const HexagonalFlat: Self = Self(2);
26 #[doc(alias = "SKTileSetTypeHexagonalPointy")]
27 pub const HexagonalPointy: Self = Self(3);
28}
29
30unsafe impl Encode for SKTileSetType {
31 const ENCODING: Encoding = NSUInteger::ENCODING;
32}
33
34unsafe impl RefEncode for SKTileSetType {
35 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
36}
37
38#[repr(transparent)]
43#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
44pub struct SKTileAdjacencyMask(pub NSUInteger);
45bitflags::bitflags! {
46 impl SKTileAdjacencyMask: NSUInteger {
47 #[doc(alias = "SKTileAdjacencyUp")]
48 const AdjacencyUp = 1<<0;
49 #[doc(alias = "SKTileAdjacencyUpperRight")]
50 const AdjacencyUpperRight = 1<<1;
51 #[doc(alias = "SKTileAdjacencyRight")]
52 const AdjacencyRight = 1<<2;
53 #[doc(alias = "SKTileAdjacencyLowerRight")]
54 const AdjacencyLowerRight = 1<<3;
55 #[doc(alias = "SKTileAdjacencyDown")]
56 const AdjacencyDown = 1<<4;
57 #[doc(alias = "SKTileAdjacencyLowerLeft")]
58 const AdjacencyLowerLeft = 1<<5;
59 #[doc(alias = "SKTileAdjacencyLeft")]
60 const AdjacencyLeft = 1<<6;
61 #[doc(alias = "SKTileAdjacencyUpperLeft")]
62 const AdjacencyUpperLeft = 1<<7;
63 #[doc(alias = "SKTileAdjacencyAll")]
64 const AdjacencyAll = SKTileAdjacencyMask::AdjacencyUp.0|SKTileAdjacencyMask::AdjacencyUpperRight.0|SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyLowerRight.0|SKTileAdjacencyMask::AdjacencyDown.0|SKTileAdjacencyMask::AdjacencyLowerLeft.0|SKTileAdjacencyMask::AdjacencyLeft.0|SKTileAdjacencyMask::AdjacencyUpperLeft.0;
65 #[doc(alias = "SKTileHexFlatAdjacencyUp")]
66 const HexFlatAdjacencyUp = 1<<0;
67 #[doc(alias = "SKTileHexFlatAdjacencyUpperRight")]
68 const HexFlatAdjacencyUpperRight = 1<<1;
69 #[doc(alias = "SKTileHexFlatAdjacencyLowerRight")]
70 const HexFlatAdjacencyLowerRight = 1<<2;
71 #[doc(alias = "SKTileHexFlatAdjacencyDown")]
72 const HexFlatAdjacencyDown = 1<<3;
73 #[doc(alias = "SKTileHexFlatAdjacencyLowerLeft")]
74 const HexFlatAdjacencyLowerLeft = 1<<4;
75 #[doc(alias = "SKTileHexFlatAdjacencyUpperLeft")]
76 const HexFlatAdjacencyUpperLeft = 1<<5;
77 #[doc(alias = "SKTileHexFlatAdjacencyAll")]
78 const HexFlatAdjacencyAll = SKTileAdjacencyMask::HexFlatAdjacencyUp.0|SKTileAdjacencyMask::HexFlatAdjacencyUpperRight.0|SKTileAdjacencyMask::HexFlatAdjacencyLowerRight.0|SKTileAdjacencyMask::HexFlatAdjacencyDown.0|SKTileAdjacencyMask::HexFlatAdjacencyLowerLeft.0|SKTileAdjacencyMask::HexFlatAdjacencyUpperLeft.0;
79 #[doc(alias = "SKTileHexPointyAdjacencyUpperLeft")]
80 const HexPointyAdjacencyUpperLeft = 1<<0;
81 #[doc(alias = "SKTileHexPointyAdjacencyUpperRight")]
82 const HexPointyAdjacencyUpperRight = 1<<1;
83 #[doc(alias = "SKTileHexPointyAdjacencyRight")]
84 const HexPointyAdjacencyRight = 1<<2;
85 #[doc(alias = "SKTileHexPointyAdjacencyLowerRight")]
86 const HexPointyAdjacencyLowerRight = 1<<3;
87 #[doc(alias = "SKTileHexPointyAdjacencyLowerLeft")]
88 const HexPointyAdjacencyLowerLeft = 1<<4;
89 #[doc(alias = "SKTileHexPointyAdjacencyLeft")]
90 const HexPointyAdjacencyLeft = 1<<5;
91 #[doc(alias = "SKTileHexPointyAdjacencyAdd")]
92 const HexPointyAdjacencyAdd = SKTileAdjacencyMask::HexPointyAdjacencyUpperLeft.0|SKTileAdjacencyMask::HexPointyAdjacencyUpperRight.0|SKTileAdjacencyMask::HexPointyAdjacencyRight.0|SKTileAdjacencyMask::HexPointyAdjacencyLowerRight.0|SKTileAdjacencyMask::HexPointyAdjacencyLowerLeft.0|SKTileAdjacencyMask::HexPointyAdjacencyLeft.0;
93 #[doc(alias = "SKTileAdjacencyUpEdge")]
94 const AdjacencyUpEdge = SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyLowerRight.0|SKTileAdjacencyMask::AdjacencyDown.0|SKTileAdjacencyMask::AdjacencyLowerLeft.0|SKTileAdjacencyMask::AdjacencyLeft.0;
95 #[doc(alias = "SKTileAdjacencyUpperRightEdge")]
96 const AdjacencyUpperRightEdge = SKTileAdjacencyMask::AdjacencyDown.0|SKTileAdjacencyMask::AdjacencyLowerLeft.0|SKTileAdjacencyMask::AdjacencyLeft.0;
97 #[doc(alias = "SKTileAdjacencyRightEdge")]
98 const AdjacencyRightEdge = SKTileAdjacencyMask::AdjacencyDown.0|SKTileAdjacencyMask::AdjacencyLowerLeft.0|SKTileAdjacencyMask::AdjacencyLeft.0|SKTileAdjacencyMask::AdjacencyUpperLeft.0|SKTileAdjacencyMask::AdjacencyUp.0;
99 #[doc(alias = "SKTileAdjacencyLowerRightEdge")]
100 const AdjacencyLowerRightEdge = SKTileAdjacencyMask::AdjacencyLeft.0|SKTileAdjacencyMask::AdjacencyUpperLeft.0|SKTileAdjacencyMask::AdjacencyUp.0;
101 #[doc(alias = "SKTileAdjacencyDownEdge")]
102 const AdjacencyDownEdge = SKTileAdjacencyMask::AdjacencyUp.0|SKTileAdjacencyMask::AdjacencyUpperRight.0|SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyLeft.0|SKTileAdjacencyMask::AdjacencyUpperLeft.0;
103 #[doc(alias = "SKTileAdjacencyLowerLeftEdge")]
104 const AdjacencyLowerLeftEdge = SKTileAdjacencyMask::AdjacencyUp.0|SKTileAdjacencyMask::AdjacencyUpperRight.0|SKTileAdjacencyMask::AdjacencyRight.0;
105 #[doc(alias = "SKTileAdjacencyLeftEdge")]
106 const AdjacencyLeftEdge = SKTileAdjacencyMask::AdjacencyUp.0|SKTileAdjacencyMask::AdjacencyUpperRight.0|SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyLowerRight.0|SKTileAdjacencyMask::AdjacencyDown.0;
107 #[doc(alias = "SKTileAdjacencyUpperLeftEdge")]
108 const AdjacencyUpperLeftEdge = SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyLowerRight.0|SKTileAdjacencyMask::AdjacencyDown.0;
109 #[doc(alias = "SKTileAdjacencyUpperRightCorner")]
110 const AdjacencyUpperRightCorner = SKTileAdjacencyMask::AdjacencyUp.0|SKTileAdjacencyMask::AdjacencyUpperRight.0|SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyLowerRight.0|SKTileAdjacencyMask::AdjacencyDown.0|SKTileAdjacencyMask::AdjacencyLeft.0|SKTileAdjacencyMask::AdjacencyUpperLeft.0;
111 #[doc(alias = "SKTileAdjacencyLowerRightCorner")]
112 const AdjacencyLowerRightCorner = SKTileAdjacencyMask::AdjacencyUp.0|SKTileAdjacencyMask::AdjacencyUpperRight.0|SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyLowerRight.0|SKTileAdjacencyMask::AdjacencyDown.0|SKTileAdjacencyMask::AdjacencyLowerLeft.0|SKTileAdjacencyMask::AdjacencyLeft.0;
113 #[doc(alias = "SKTileAdjacencyLowerLeftCorner")]
114 const AdjacencyLowerLeftCorner = SKTileAdjacencyMask::AdjacencyUp.0|SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyLowerRight.0|SKTileAdjacencyMask::AdjacencyDown.0|SKTileAdjacencyMask::AdjacencyLowerLeft.0|SKTileAdjacencyMask::AdjacencyLeft.0|SKTileAdjacencyMask::AdjacencyUpperLeft.0;
115 #[doc(alias = "SKTileAdjacencyUpperLeftCorner")]
116 const AdjacencyUpperLeftCorner = SKTileAdjacencyMask::AdjacencyUp.0|SKTileAdjacencyMask::AdjacencyUpperRight.0|SKTileAdjacencyMask::AdjacencyRight.0|SKTileAdjacencyMask::AdjacencyDown.0|SKTileAdjacencyMask::AdjacencyLowerLeft.0|SKTileAdjacencyMask::AdjacencyLeft.0|SKTileAdjacencyMask::AdjacencyUpperLeft.0;
117 }
118}
119
120unsafe impl Encode for SKTileAdjacencyMask {
121 const ENCODING: Encoding = NSUInteger::ENCODING;
122}
123
124unsafe impl RefEncode for SKTileAdjacencyMask {
125 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
126}
127
128extern_class!(
129 #[unsafe(super(NSObject))]
133 #[derive(Debug, PartialEq, Eq, Hash)]
134 pub struct SKTileSet;
135);
136
137unsafe impl NSCoding for SKTileSet {}
138
139unsafe impl NSCopying for SKTileSet {}
140
141unsafe impl CopyingHelper for SKTileSet {
142 type Result = Self;
143}
144
145unsafe impl NSObjectProtocol for SKTileSet {}
146
147unsafe impl NSSecureCoding for SKTileSet {}
148
149impl SKTileSet {
150 extern_methods!(
151 #[unsafe(method(tileSetWithTileGroups:))]
155 #[unsafe(method_family = none)]
156 pub unsafe fn tileSetWithTileGroups(tile_groups: &NSArray<SKTileGroup>) -> Retained<Self>;
157
158 #[unsafe(method(tileSetWithTileGroups:tileSetType:))]
164 #[unsafe(method_family = none)]
165 pub unsafe fn tileSetWithTileGroups_tileSetType(
166 tile_groups: &NSArray<SKTileGroup>,
167 tile_set_type: SKTileSetType,
168 ) -> Retained<Self>;
169
170 #[unsafe(method(initWithTileGroups:))]
174 #[unsafe(method_family = init)]
175 pub unsafe fn initWithTileGroups(
176 this: Allocated<Self>,
177 tile_groups: &NSArray<SKTileGroup>,
178 ) -> Retained<Self>;
179
180 #[unsafe(method(initWithTileGroups:tileSetType:))]
186 #[unsafe(method_family = init)]
187 pub unsafe fn initWithTileGroups_tileSetType(
188 this: Allocated<Self>,
189 tile_groups: &NSArray<SKTileGroup>,
190 tile_set_type: SKTileSetType,
191 ) -> Retained<Self>;
192
193 #[unsafe(method(tileSetNamed:))]
197 #[unsafe(method_family = none)]
198 pub unsafe fn tileSetNamed(name: &NSString) -> Option<Retained<Self>>;
199
200 #[unsafe(method(tileSetFromURL:))]
204 #[unsafe(method_family = none)]
205 pub unsafe fn tileSetFromURL(url: &NSURL) -> Option<Retained<Self>>;
206
207 #[unsafe(method(tileGroups))]
209 #[unsafe(method_family = none)]
210 pub unsafe fn tileGroups(&self) -> Retained<NSArray<SKTileGroup>>;
211
212 #[unsafe(method(setTileGroups:))]
214 #[unsafe(method_family = none)]
215 pub unsafe fn setTileGroups(&self, tile_groups: &NSArray<SKTileGroup>);
216
217 #[unsafe(method(name))]
219 #[unsafe(method_family = none)]
220 pub unsafe fn name(&self) -> Option<Retained<NSString>>;
221
222 #[unsafe(method(setName:))]
224 #[unsafe(method_family = none)]
225 pub unsafe fn setName(&self, name: Option<&NSString>);
226
227 #[unsafe(method(type))]
229 #[unsafe(method_family = none)]
230 pub unsafe fn r#type(&self) -> SKTileSetType;
231
232 #[unsafe(method(setType:))]
234 #[unsafe(method_family = none)]
235 pub unsafe fn setType(&self, r#type: SKTileSetType);
236
237 #[unsafe(method(defaultTileGroup))]
238 #[unsafe(method_family = none)]
239 pub unsafe fn defaultTileGroup(&self) -> Option<Retained<SKTileGroup>>;
240
241 #[unsafe(method(setDefaultTileGroup:))]
243 #[unsafe(method_family = none)]
244 pub unsafe fn setDefaultTileGroup(&self, default_tile_group: Option<&SKTileGroup>);
245
246 #[cfg(feature = "objc2-core-foundation")]
247 #[unsafe(method(defaultTileSize))]
249 #[unsafe(method_family = none)]
250 pub unsafe fn defaultTileSize(&self) -> CGSize;
251
252 #[cfg(feature = "objc2-core-foundation")]
253 #[unsafe(method(setDefaultTileSize:))]
255 #[unsafe(method_family = none)]
256 pub unsafe fn setDefaultTileSize(&self, default_tile_size: CGSize);
257 );
258}
259
260impl SKTileSet {
262 extern_methods!(
263 #[unsafe(method(init))]
264 #[unsafe(method_family = init)]
265 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
266
267 #[unsafe(method(new))]
268 #[unsafe(method_family = new)]
269 pub unsafe fn new() -> Retained<Self>;
270 );
271}
272
273extern_class!(
274 #[unsafe(super(NSObject))]
278 #[derive(Debug, PartialEq, Eq, Hash)]
279 pub struct SKTileGroup;
280);
281
282unsafe impl NSCoding for SKTileGroup {}
283
284unsafe impl NSCopying for SKTileGroup {}
285
286unsafe impl CopyingHelper for SKTileGroup {
287 type Result = Self;
288}
289
290unsafe impl NSObjectProtocol for SKTileGroup {}
291
292unsafe impl NSSecureCoding for SKTileGroup {}
293
294impl SKTileGroup {
295 extern_methods!(
296 #[cfg(feature = "SKTileDefinition")]
297 #[unsafe(method(tileGroupWithTileDefinition:))]
301 #[unsafe(method_family = none)]
302 pub unsafe fn tileGroupWithTileDefinition(
303 tile_definition: &SKTileDefinition,
304 ) -> Retained<Self>;
305
306 #[unsafe(method(tileGroupWithRules:))]
310 #[unsafe(method_family = none)]
311 pub unsafe fn tileGroupWithRules(rules: &NSArray<SKTileGroupRule>) -> Retained<Self>;
312
313 #[unsafe(method(emptyTileGroup))]
315 #[unsafe(method_family = none)]
316 pub unsafe fn emptyTileGroup() -> Retained<Self>;
317
318 #[cfg(feature = "SKTileDefinition")]
319 #[unsafe(method(initWithTileDefinition:))]
323 #[unsafe(method_family = init)]
324 pub unsafe fn initWithTileDefinition(
325 this: Allocated<Self>,
326 tile_definition: &SKTileDefinition,
327 ) -> Retained<Self>;
328
329 #[unsafe(method(initWithRules:))]
333 #[unsafe(method_family = init)]
334 pub unsafe fn initWithRules(
335 this: Allocated<Self>,
336 rules: &NSArray<SKTileGroupRule>,
337 ) -> Retained<Self>;
338
339 #[unsafe(method(rules))]
341 #[unsafe(method_family = none)]
342 pub unsafe fn rules(&self) -> Retained<NSArray<SKTileGroupRule>>;
343
344 #[unsafe(method(setRules:))]
346 #[unsafe(method_family = none)]
347 pub unsafe fn setRules(&self, rules: &NSArray<SKTileGroupRule>);
348
349 #[unsafe(method(name))]
351 #[unsafe(method_family = none)]
352 pub unsafe fn name(&self) -> Option<Retained<NSString>>;
353
354 #[unsafe(method(setName:))]
356 #[unsafe(method_family = none)]
357 pub unsafe fn setName(&self, name: Option<&NSString>);
358 );
359}
360
361impl SKTileGroup {
363 extern_methods!(
364 #[unsafe(method(init))]
365 #[unsafe(method_family = init)]
366 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
367
368 #[unsafe(method(new))]
369 #[unsafe(method_family = new)]
370 pub unsafe fn new() -> Retained<Self>;
371 );
372}
373
374extern_class!(
375 #[unsafe(super(NSObject))]
379 #[derive(Debug, PartialEq, Eq, Hash)]
380 pub struct SKTileGroupRule;
381);
382
383unsafe impl NSCoding for SKTileGroupRule {}
384
385unsafe impl NSCopying for SKTileGroupRule {}
386
387unsafe impl CopyingHelper for SKTileGroupRule {
388 type Result = Self;
389}
390
391unsafe impl NSObjectProtocol for SKTileGroupRule {}
392
393unsafe impl NSSecureCoding for SKTileGroupRule {}
394
395impl SKTileGroupRule {
396 extern_methods!(
397 #[cfg(feature = "SKTileDefinition")]
398 #[unsafe(method(tileGroupRuleWithAdjacency:tileDefinitions:))]
404 #[unsafe(method_family = none)]
405 pub unsafe fn tileGroupRuleWithAdjacency_tileDefinitions(
406 adjacency: SKTileAdjacencyMask,
407 tile_definitions: &NSArray<SKTileDefinition>,
408 ) -> Retained<Self>;
409
410 #[cfg(feature = "SKTileDefinition")]
411 #[unsafe(method(initWithAdjacency:tileDefinitions:))]
417 #[unsafe(method_family = init)]
418 pub unsafe fn initWithAdjacency_tileDefinitions(
419 this: Allocated<Self>,
420 adjacency: SKTileAdjacencyMask,
421 tile_definitions: &NSArray<SKTileDefinition>,
422 ) -> Retained<Self>;
423
424 #[unsafe(method(adjacency))]
426 #[unsafe(method_family = none)]
427 pub unsafe fn adjacency(&self) -> SKTileAdjacencyMask;
428
429 #[unsafe(method(setAdjacency:))]
431 #[unsafe(method_family = none)]
432 pub unsafe fn setAdjacency(&self, adjacency: SKTileAdjacencyMask);
433
434 #[cfg(feature = "SKTileDefinition")]
435 #[unsafe(method(tileDefinitions))]
437 #[unsafe(method_family = none)]
438 pub unsafe fn tileDefinitions(&self) -> Retained<NSArray<SKTileDefinition>>;
439
440 #[cfg(feature = "SKTileDefinition")]
441 #[unsafe(method(setTileDefinitions:))]
443 #[unsafe(method_family = none)]
444 pub unsafe fn setTileDefinitions(&self, tile_definitions: &NSArray<SKTileDefinition>);
445
446 #[unsafe(method(name))]
448 #[unsafe(method_family = none)]
449 pub unsafe fn name(&self) -> Option<Retained<NSString>>;
450
451 #[unsafe(method(setName:))]
453 #[unsafe(method_family = none)]
454 pub unsafe fn setName(&self, name: Option<&NSString>);
455 );
456}
457
458impl SKTileGroupRule {
460 extern_methods!(
461 #[unsafe(method(init))]
462 #[unsafe(method_family = init)]
463 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
464
465 #[unsafe(method(new))]
466 #[unsafe(method_family = new)]
467 pub unsafe fn new() -> Retained<Self>;
468 );
469}