LeviLamina
Loading...
Searching...
No Matches
float4x4.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5namespace renoir {
6
7struct float4x4 {
8public:
9 // float4x4 inner types declare
10 // clang-format off
13 // clang-format on
14
15 // float4x4 inner types define
16 enum class MatKeys : int {
17 // bitfield representation
18 Sxx = 0,
19 Rz00 = 0,
20 Ry00 = 0,
21 Sx = 0,
22 Skx = 1 << 0,
23 Rz01 = 1 << 0,
24 Syx = 1 << 0,
25 Ry02 = 1 << 1,
26 Szx = 1 << 1,
27 Sky = 1 << 2,
28 Rz10 = 1 << 2,
29 Sxy = 1 << 2,
30 Ry20 = 1 << 3,
31 Sxz = 1 << 3,
32 Tx = Syx | Szx,
33 Syy = Syx | Sxy,
34 Rz11 = Syx | Sxy,
35 Rx11 = Syx | Sxy,
36 Sy = Syx | Sxy,
37 Szy = Szx | Sxy,
38 Rx12 = Szx | Sxy,
39 Ty = Syx | Szx | Sxy,
40 Syz = Syx | Sxz,
41 Rx21 = Syx | Sxz,
42 Szz = Szx | Sxz,
43 Ry22 = Szx | Sxz,
44 Rx22 = Szx | Sxz,
45 Sz = Szx | Sxz,
46 Tz = Syx | Szx | Sxz,
47 };
48
50 public:
51 // member variables
52 // NOLINTBEGIN
53 ::ll::UntypedStorage<4, 8> mUnk863e52;
54 ::ll::UntypedStorage<4, 8> mUnke887f2;
55 ::ll::UntypedStorage<4, 4> mUnk2b44d2;
56 ::ll::UntypedStorage<4, 4> mUnkef3837;
57 ::ll::UntypedStorage<4, 4> mUnk4742ee;
58 ::ll::UntypedStorage<4, 4> mUnk209f9a;
59 ::ll::UntypedStorage<4, 4> mUnk2f2e67;
60 // NOLINTEND
61
62 public:
63 // prevent constructor by default
64 Matrix2DDecomposition& operator=(Matrix2DDecomposition const&);
65 Matrix2DDecomposition(Matrix2DDecomposition const&);
66 Matrix2DDecomposition();
67 };
68
70 public:
71 // member variables
72 // NOLINTBEGIN
73 ::ll::UntypedStorage<4, 12> mUnk40be6a;
74 ::ll::UntypedStorage<4, 4> mUnk3de6bb;
75 ::ll::UntypedStorage<4, 4> mUnkd6d020;
76 ::ll::UntypedStorage<4, 4> mUnk713c56;
77 ::ll::UntypedStorage<4, 16> mUnk5bfd74;
78 ::ll::UntypedStorage<4, 12> mUnk4f05cf;
79 ::ll::UntypedStorage<4, 16> mUnk4275b0;
80 // NOLINTEND
81
82 public:
83 // prevent constructor by default
84 Matrix3DDecomposition& operator=(Matrix3DDecomposition const&);
85 Matrix3DDecomposition(Matrix3DDecomposition const&);
86 Matrix3DDecomposition();
87 };
88
89public:
90 // member variables
91 // NOLINTBEGIN
92 union {
93 struct {
94 ::ll::UntypedStorage<4, 4> mUnkb543fd;
95 ::ll::UntypedStorage<4, 4> mUnk15ef97;
96 ::ll::UntypedStorage<4, 4> mUnk25b5e7;
97 ::ll::UntypedStorage<4, 4> mUnkb29c57;
98 ::ll::UntypedStorage<4, 4> mUnk447a96;
99 ::ll::UntypedStorage<4, 4> mUnk8c03e3;
100 ::ll::UntypedStorage<4, 4> mUnk6e11d0;
101 ::ll::UntypedStorage<4, 4> mUnk3cb748;
102 ::ll::UntypedStorage<4, 4> mUnk491e3c;
103 ::ll::UntypedStorage<4, 4> mUnk8dfb5f;
104 ::ll::UntypedStorage<4, 4> mUnk8b3dcd;
105 ::ll::UntypedStorage<4, 4> mUnk7f9c04;
106 ::ll::UntypedStorage<4, 4> mUnkfb3b0f;
107 ::ll::UntypedStorage<4, 4> mUnk99ef5f;
108 ::ll::UntypedStorage<4, 4> mUnk99ff95;
109 ::ll::UntypedStorage<4, 4> mUnka10934;
110 };
111 ::ll::UntypedStorage<4, 64> mUnk70f4a4;
112 ::ll::UntypedStorage<4, 64> mUnk732da8;
113 };
114 // NOLINTEND
115
116public:
117 // prevent constructor by default
118 float4x4& operator=(float4x4 const&);
119 float4x4(float4x4 const&);
120 float4x4();
121};
122
123} // namespace renoir
Definition float4x4.h:7