objc2_metal/generated/
MTLAccelerationStructureTypes.rs1use core::ffi::*;
4use objc2::__framework_prelude::*;
5
6use crate::*;
7
8#[repr(C)]
10#[derive(Clone, Copy, Debug, PartialEq)]
11pub struct MTLPackedFloatQuaternion {
12 pub x: c_float,
13 pub y: c_float,
14 pub z: c_float,
15 pub w: c_float,
16}
17
18unsafe impl Encode for MTLPackedFloatQuaternion {
19 const ENCODING: Encoding = Encoding::Struct(
20 "MTLPackedFloatQuaternion",
21 &[
22 <c_float>::ENCODING,
23 <c_float>::ENCODING,
24 <c_float>::ENCODING,
25 <c_float>::ENCODING,
26 ],
27 );
28}
29
30unsafe impl RefEncode for MTLPackedFloatQuaternion {
31 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
32}
33
34impl MTLPackedFloatQuaternion {
35 }
37
38#[repr(C)]
40#[derive(Clone, Copy, Debug, PartialEq)]
41pub struct MTLPackedFloat4x3 {
42 pub columns: [MTLPackedFloat3; 4],
43}
44
45unsafe impl Encode for MTLPackedFloat4x3 {
46 const ENCODING: Encoding =
47 Encoding::Struct("_MTLPackedFloat4x3", &[<[MTLPackedFloat3; 4]>::ENCODING]);
48}
49
50unsafe impl RefEncode for MTLPackedFloat4x3 {
51 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
52}
53
54#[repr(C)]
58#[derive(Clone, Copy, Debug, PartialEq)]
59pub struct MTLAxisAlignedBoundingBox {
60 pub min: MTLPackedFloat3,
62 pub max: MTLPackedFloat3,
64}
65
66unsafe impl Encode for MTLAxisAlignedBoundingBox {
67 const ENCODING: Encoding = Encoding::Struct(
68 "_MTLAxisAlignedBoundingBox",
69 &[<MTLPackedFloat3>::ENCODING, <MTLPackedFloat3>::ENCODING],
70 );
71}
72
73unsafe impl RefEncode for MTLAxisAlignedBoundingBox {
74 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
75}
76
77#[repr(C)]
83#[derive(Clone, Copy, Debug, PartialEq)]
84pub struct MTLComponentTransform {
85 pub scale: MTLPackedFloat3,
87 pub shear: MTLPackedFloat3,
89 pub pivot: MTLPackedFloat3,
92 pub rotation: MTLPackedFloatQuaternion,
95 pub translation: MTLPackedFloat3,
98}
99
100unsafe impl Encode for MTLComponentTransform {
101 const ENCODING: Encoding = Encoding::Struct(
102 "?",
103 &[
104 <MTLPackedFloat3>::ENCODING,
105 <MTLPackedFloat3>::ENCODING,
106 <MTLPackedFloat3>::ENCODING,
107 <MTLPackedFloatQuaternion>::ENCODING,
108 <MTLPackedFloat3>::ENCODING,
109 ],
110 );
111}
112
113unsafe impl RefEncode for MTLComponentTransform {
114 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
115}