Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_debug_camera.h
Go to the documentation of this file.
1#ifndef D_DEBUG_CAMERA_H
2#define D_DEBUG_CAMERA_H
3
4#include "d/d_camera.h"
5#include "JSystem/JHostIO/JORFile.h"
6#include <cstring>
7
14
15class dDbgCamera_c;
16
18
20public:
23
24 /* 0x00 */ cXyz mCenter;
25 /* 0x0C */ cXyz mEye;
26 /* 0x18 */ f32 mFovy;
27 /* 0x1C */ f32 mBank;
28 struct {
29 /* 0x20 */ fpc_ProcID id;
30 /* 0x24 */ char name[dStage_NAME_LENGTH];
32 /* 0x2C */ int mAction;
33 /* 0x30 */ int mTimer;
34};
35
36class dDbgCamSetup_c : public JORReflexible {
37public:
40
41 void Init(dDbgCamera_c*);
42 void Finish();
43 f32 Translate(f32);
44 s16 Rotate(f32);
45 f32 FlatMove(f32);
46 f32 Turbo(f32);
47
48 void genMessage(JORMContext*);
49 void listenPropertyEvent(const JORPropertyEvent*);
50
51 f32 FovyTick() { return mFovyTick; }
52 f32 RotAccel() { return mRotAccel; }
53 f32 TransAccel() { return mTransAccel; }
54 int CenterMarker() { return mCenterMarker; }
55 f32 CenterBall() { return mCenterBall; }
56 f32 CenterCloss() { return mCenterCross; }
57
58 bool CheckFlag(u16 i_flag) { return (i_flag & mFlag) ? true : false; }
59
60 /* 0x04 */ s32 mActorSrchType;
61 /* 0x08 */ f32 mActorSrchRange;
62 /* 0x0C */ fpc_ProcID mActorID;
64 /* 0x14 */ f32 mMoveSpeed;
65 /* 0x18 */ f32 mMoveTurbo;
66 /* 0x1C */ f32 mMoveParallelShift;
67 /* 0x20 */ f32 mRotateSpeed;
68 /* 0x24 */ f32 mFovyTick;
69 /* 0x28 */ f32 mTransAccel;
70 /* 0x2C */ f32 mRotAccel;
71 /* 0x30 */ f32 mMoveMax;
72 /* 0x34 */ f32 mRotateMax;
73 /* 0x38 */ f32 mUnkMax;
74 /* 0x3C */ f32 mCenterCross;
75 /* 0x40 */ f32 mCenterBall;
76 /* 0x44 */ s32 mCenterMarker;
77 /* 0x48 */ u16 mFlag;
78 /* 0x4C */ cXyz mGazePoint;
79 /* 0x58 */ cXyz mPerspective;
80 /* 0x64 */ f32 mAngle;
81 /* 0x68 */ cXyz field_0x68;
82 /* 0x74 */ cXyz field_0x74;
83 /* 0x80 */ s8 m_childNo;
84 /* 0x84 */ s32 mPosX;
85 /* 0x88 */ s32 mPosY;
86};
87
89public:
92
93 void InitlChk();
95
96 int moveTool();
97 int cmdTool();
98 int makeZevData();
99 void printZevData();
100 void WriteZevData();
101 void monitor();
102 bool showCenterMarker();
103 bool showCameraPos();
104 bool showIdlCameraPos();
105 void Init(dCamera_c*);
106 void Finish();
107 void Reset(dCamera_c*);
108 int Run();
109 int DrawShape();
110 int Report(int, int, JUtility::TColor, const char*, ...);
111 void OpenFile();
112 void PrintFile(char*, ...);
113 void CloseFile();
114
115 char* ActionName(s32 i_action) {
116 static char* name[] = {
117 "FIXEDFRM",
118 "UNITRANS",
119 "BSPLINE",
120 "NOACTION",
121 };
122
123 return name[i_action];
124 }
125
127 void Fovy(f32 fovy) { mRunKey.mFovy = fovy; };
128 void Eye(const cXyz& eye) { mRunKey.mEye = eye; };
129 void Center(const cXyz& center) { mRunKey.mCenter = center; };
130 f32 Fovy() { return mRunKey.mFovy; }
131 s16 Bank() { return cSAngle(mRunKey.mBank).Val(); }
132 cXyz Up() { return mUp; }
133 cXyz Eye() { return mRunKey.mEye; }
134 bool Playing() { return mIsPlaying; }
135
137 dDbgCamKey_c rt;
138 rt.mCenter = mpCamera->Center();
139 rt.mEye = mpCamera->Eye();
140 rt.mFovy = mpCamera->Fovy();
141 rt.mBank = mpCamera->Bank().Degree();
143 strcpy(rt.mActorInfo.name, "WORLD");
145 rt.mTimer = 20;
146 return rt;
147 }
148
149 char ActionSymbol(s32 i_action) { return "|]>-..."[i_action]; }
150
151 /* 0x000 */ dCamera_c* mpCamera;
153 /* 0x038 */ cXyz mUp;
154 /* 0x044 */ cSGlobe field_0x44;
155 /* 0x04C */ int mPadNo;
156 /* 0x050 */ int field_0x50;
157 /* 0x054 */ u32 field_0x54;
158 /* 0x058 */ int field_0x58;
159 /* 0x05C */ int mCmdMode;
160 /* 0x060 */ char mActionKey[32];
161 /* 0x080 */ u8 field_0x80;
162 /* 0x084 */ dDbgCamKey_c mKeys[32];
163 class {
164 public:
165 /* 0x000 */ int field_0x0;
166 /* 0x004 */ int field_0x4;
167 /* 0x008 */ int field_0x8[2];
168 /* 0x010 */ cXyz field_0x10[32];
169 /* 0x190 */ cXyz field_0x190[32];
170 } /* 0x704 */ field_0x704;
171 /* 0xA14 */ u8 field_0xA14[0xB14 - 0xA14];
172 /* 0xB14 */ int field_0xb14;
173 /* 0xB18 */ bool mIsPlaying;
174 /* 0xB1C */ dBgS_LinChk mLchk[2];
175 /* 0xBFC */ int mLchkNum;
176 /* 0xC00 */ int field_0xc00;
177 /* 0xC04 */ int field_0xc04;
178 /* 0xC08 */ int field_0xc08;
179 /* 0xC0C */ int field_0xc0c;
180 /* 0xC10 */ f32 field_0xc10;
181 /* 0xC14 */ f32 field_0xc14;
182 /* 0xC18 */ int field_0xc18;
183 /* 0xC1C */ int field_0xc1c;
185 /* 0xCAC */ JORFile mFile;
186};
187
188#endif
Definition c_angle.h:18
float Degree(void) const
Definition c_angle.cpp:42
s16 Val() const
Definition c_angle.h:39
Definition c_angle.h:152
Definition d_bg_s_lin_chk.h:9
Definition d_camera.h:121
cXyz Eye()
cSAngle Bank()
Definition d_camera.h:1062
f32 Fovy()
Definition d_camera.h:1072
cXyz Center()
Definition d_debug_camera.h:19
struct dDbgCamKey_c::@45 mActorInfo
fpc_ProcID id
Definition d_debug_camera.h:29
dDbgCamKey_c()
Definition d_debug_camera.h:21
f32 mBank
Definition d_debug_camera.h:27
char name[dStage_NAME_LENGTH]
Definition d_debug_camera.h:30
cXyz mCenter
Definition d_debug_camera.h:24
cXyz mEye
Definition d_debug_camera.h:25
f32 mFovy
Definition d_debug_camera.h:26
int mTimer
Definition d_debug_camera.h:33
~dDbgCamKey_c()
Definition d_debug_camera.cpp:34
int mAction
Definition d_debug_camera.h:32
Definition d_debug_camera.h:36
void Finish()
Definition d_debug_camera.cpp:116
f32 mAngle
Definition d_debug_camera.h:80
f32 mUnkMax
Definition d_debug_camera.h:73
f32 mMoveMax
Definition d_debug_camera.h:71
s16 Rotate(f32)
Definition d_debug_camera.cpp:133
void listenPropertyEvent(const JORPropertyEvent *)
Definition d_debug_camera.cpp:266
f32 mCenterBall
Definition d_debug_camera.h:75
f32 mTransAccel
Definition d_debug_camera.h:69
u16 mFlag
Definition d_debug_camera.h:77
f32 mCenterCross
Definition d_debug_camera.h:74
f32 mMoveTurbo
Definition d_debug_camera.h:65
f32 mRotateMax
Definition d_debug_camera.h:72
f32 mMoveParallelShift
Definition d_debug_camera.h:66
cXyz mGazePoint
Definition d_debug_camera.h:78
s32 mPosY
Definition d_debug_camera.h:85
f32 FovyTick()
Definition d_debug_camera.h:51
f32 Translate(f32)
Definition d_debug_camera.cpp:120
cXyz field_0x74
Definition d_debug_camera.h:82
int CenterMarker()
Definition d_debug_camera.h:54
void genMessage(JORMContext *)
Definition d_debug_camera.cpp:184
f32 FlatMove(f32)
Definition d_debug_camera.cpp:146
f32 mFovyTick
Definition d_debug_camera.h:68
f32 CenterCloss()
Definition d_debug_camera.h:56
cXyz field_0x68
Definition d_debug_camera.h:81
f32 mMoveSpeed
Definition d_debug_camera.h:64
f32 RotAccel()
Definition d_debug_camera.h:52
f32 mRotAccel
Definition d_debug_camera.h:70
bool CheckFlag(u16 i_flag)
Definition d_debug_camera.h:58
fpc_ProcID mActorID
Definition d_debug_camera.h:62
f32 mActorSrchRange
Definition d_debug_camera.h:61
void Init(dDbgCamera_c *)
Definition d_debug_camera.cpp:110
s32 mCenterMarker
Definition d_debug_camera.h:76
~dDbgCamSetup_c()
Definition d_debug_camera.h:39
dDbgCamera_c * mpDbgCam
Definition d_debug_camera.h:63
s32 mPosX
Definition d_debug_camera.h:84
s32 mActorSrchType
Definition d_debug_camera.h:60
dDbgCamSetup_c()
Definition d_debug_camera.cpp:70
f32 CenterBall()
Definition d_debug_camera.h:55
cXyz mPerspective
Definition d_debug_camera.h:79
f32 Turbo(f32)
Definition d_debug_camera.cpp:159
s8 m_childNo
Definition d_debug_camera.h:83
f32 TransAccel()
Definition d_debug_camera.h:53
f32 mRotateSpeed
Definition d_debug_camera.h:67
Definition d_debug_camera.h:88
cXyz field_0x10[32]
Definition d_debug_camera.h:168
cSGlobe field_0x44
Definition d_debug_camera.h:154
dBgS_LinChk mLchk[2]
Definition d_debug_camera.h:174
dDbgCamKey_c mRunKey
Definition d_debug_camera.h:152
int field_0xc04
Definition d_debug_camera.h:177
int field_0x50
Definition d_debug_camera.h:156
bool showCenterMarker()
Definition d_debug_camera.cpp:1367
int mCmdMode
Definition d_debug_camera.h:159
f32 field_0xc14
Definition d_debug_camera.h:181
int field_0x58
Definition d_debug_camera.h:158
int field_0xc18
Definition d_debug_camera.h:182
cXyz Center()
Definition d_debug_camera.h:126
s16 Bank()
Definition d_debug_camera.h:131
dDbgCamKey_c PlaneKey()
Definition d_debug_camera.h:136
char ActionSymbol(s32 i_action)
Definition d_debug_camera.h:149
void CloseFile()
Definition d_debug_camera.cpp:1773
char mActionKey[32]
Definition d_debug_camera.h:160
void PrintFile(char *,...)
Definition d_debug_camera.cpp:1762
u8 field_0xA14[0xB14 - 0xA14]
Definition d_debug_camera.h:171
bool Playing()
Definition d_debug_camera.h:134
void InitlChk()
Definition d_debug_camera.cpp:253
cXyz Up()
Definition d_debug_camera.h:132
int SetlChk(dBgS_LinChk)
Definition d_debug_camera.cpp:257
dDbgCamera_c()
Definition d_debug_camera.h:90
void printZevData()
Definition d_debug_camera.cpp:1053
class dDbgCamera_c::@59 field_0x704
int makeZevData()
Definition d_debug_camera.cpp:717
int field_0xc0c
Definition d_debug_camera.h:179
void Reset(dCamera_c *)
Definition d_debug_camera.cpp:1418
dDbgCamKey_c mKeys[32]
Definition d_debug_camera.h:162
f32 field_0xc10
Definition d_debug_camera.h:180
int Report(int, int, JUtility::TColor, const char *,...)
Definition d_debug_camera.cpp:1732
bool showCameraPos()
Definition d_debug_camera.cpp:1388
u32 field_0x54
Definition d_debug_camera.h:157
int DrawShape()
Definition d_debug_camera.cpp:1508
void Finish()
Definition d_debug_camera.cpp:1414
void monitor()
Definition d_debug_camera.cpp:1291
int field_0x4
Definition d_debug_camera.h:166
void Init(dCamera_c *)
Definition d_debug_camera.cpp:1396
u8 field_0x80
Definition d_debug_camera.h:161
~dDbgCamera_c()
Definition d_debug_camera.h:91
void OpenFile()
Definition d_debug_camera.cpp:1757
int cmdTool()
Definition d_debug_camera.cpp:647
f32 Fovy()
Definition d_debug_camera.h:130
bool mIsPlaying
Definition d_debug_camera.h:173
dCamera_c * mpCamera
Definition d_debug_camera.h:151
int field_0xc08
Definition d_debug_camera.h:178
int field_0x0
Definition d_debug_camera.h:165
cXyz mUp
Definition d_debug_camera.h:153
void Eye(const cXyz &eye)
Definition d_debug_camera.h:128
int field_0xc1c
Definition d_debug_camera.h:183
char * ActionName(s32 i_action)
Definition d_debug_camera.h:115
int mLchkNum
Definition d_debug_camera.h:175
dDbgCamSetup_c mCamSetup
Definition d_debug_camera.h:184
JORFile mFile
Definition d_debug_camera.h:185
int field_0xc00
Definition d_debug_camera.h:176
int Run()
Definition d_debug_camera.cpp:1436
int moveTool()
Definition d_debug_camera.cpp:310
int mPadNo
Definition d_debug_camera.h:155
void WriteZevData()
Definition d_debug_camera.cpp:1170
cXyz field_0x190[32]
Definition d_debug_camera.h:169
void Center(const cXyz &center)
Definition d_debug_camera.h:129
void Fovy(f32 fovy)
Definition d_debug_camera.h:127
cXyz Eye()
Definition d_debug_camera.h:133
bool showIdlCameraPos()
Definition d_debug_camera.cpp:1392
int field_0x8[2]
Definition d_debug_camera.h:167
int field_0xb14
Definition d_debug_camera.h:172
s16 name
Definition d_a_e_pz.cpp:1757
dDbgCam_KeyAction
Definition d_debug_camera.h:8
@ dDbgCam_KeyAction_BSPLINE
Definition d_debug_camera.h:11
@ dDbgCam_KeyAction_UNITRANS
Definition d_debug_camera.h:10
@ dDbgCam_KeyAction_NOACTION
Definition d_debug_camera.h:12
@ dDbgCam_KeyAction_FIXEDFRM
Definition d_debug_camera.h:9
dDbgCamera_c dDbgCamera
Definition d_debug_camera.cpp:32
unsigned int fpc_ProcID
Definition f_pc_base.h:10
@ fpcM_ERROR_PROCESS_ID_e
Definition f_pc_manager.h:14
Definition c_xyz.h:7