SSBM Decomp
Loading...
Searching...
No Matches
forward.h
Go to the documentation of this file.
1#ifndef SYSDOLPHIN_BASELIB_FORWARD_H
2#define SYSDOLPHIN_BASELIB_FORWARD_H
3
4#include <platform.h>
5
6typedef struct HSD_AnimJoint HSD_AnimJoint;
7typedef struct HSD_AObj HSD_AObj;
8typedef struct HSD_AObjDesc HSD_AObjDesc;
9typedef struct HSD_Archive HSD_Archive;
15typedef struct HSD_CameraAnim HSD_CameraAnim;
19typedef struct HSD_CObj HSD_CObj;
20typedef struct HSD_CObjInfo HSD_CObjInfo;
21typedef struct HSD_DObj HSD_DObj;
22typedef struct HSD_DObjDesc HSD_DObjDesc;
23typedef struct HSD_DObjInfo HSD_DObjInfo;
24typedef struct HSD_Envelope HSD_Envelope;
26typedef struct HSD_Exp HSD_Exp;
27typedef struct HSD_ExpDesc HSD_ExpDesc;
28typedef struct HSD_Fog HSD_Fog;
29typedef struct HSD_FogAdj HSD_FogAdj;
30typedef struct HSD_FogAdjDesc HSD_FogAdjDesc;
31typedef struct HSD_FogAdjInfo HSD_FogAdjInfo;
32typedef struct HSD_FogDesc HSD_FogDesc;
33typedef struct HSD_FogInfo HSD_FogInfo;
34typedef struct HSD_GObj HSD_GObj;
35typedef struct HSD_GObjProc HSD_GObjProc;
36typedef struct HSD_Hash HSD_Hash;
37typedef struct HSD_HashEntry HSD_HashEntry;
38typedef struct HSD_IKHint HSD_IKHint;
39typedef struct HSD_IKHintDesc HSD_IKHintDesc;
40typedef struct HSD_ImageDesc HSD_ImageDesc;
41typedef struct HSD_JObj HSD_JObj;
42typedef struct HSD_Joint HSD_Joint;
43typedef struct HSD_LightAnim HSD_LightAnim;
44typedef struct HSD_LightAttn HSD_LightAttn;
45typedef struct HSD_LightDesc HSD_LightDesc;
46typedef struct HSD_LightPoint HSD_LightPoint;
48typedef struct HSD_LightSpot HSD_LightSpot;
50typedef struct HSD_LObj HSD_LObj;
51typedef struct HSD_LObjInfo HSD_LObjInfo;
53typedef struct HSD_Material HSD_Material;
54typedef struct HSD_MObj HSD_MObj;
55typedef struct HSD_MObjInfo HSD_MObjInfo;
56typedef struct HSD_Obj HSD_Obj;
57typedef struct HSD_PadData HSD_PadData;
59typedef struct HSD_PadStatus HSD_PadStatus;
60typedef struct HSD_PEDesc HSD_PEDesc;
61typedef struct HSD_PObj HSD_PObj;
62typedef struct HSD_PObjDesc HSD_PObjDesc;
63typedef struct HSD_PObjInfo HSD_PObjInfo;
64typedef struct HSD_RObj HSD_RObj;
66typedef struct HSD_RObjDesc HSD_RObjDesc;
67typedef struct HSD_RumbleData HSD_RumbleData;
68typedef struct HSD_Rvalue HSD_Rvalue;
69typedef struct HSD_RvalueList HSD_RvalueList;
70typedef struct HSD_Shadow HSD_Shadow;
71typedef struct HSD_ShapeAnim HSD_ShapeAnim;
74typedef struct HSD_ShapeSet HSD_ShapeSet;
76typedef struct HSD_SM HSD_SM;
77typedef struct HSD_Spline HSD_Spline;
78typedef struct HSD_TExpDag HSD_TExpDag;
79typedef struct HSD_TExpRes HSD_TExpRes;
80typedef struct HSD_TObj HSD_TObj;
81typedef struct HSD_ViewingRect HSD_ViewingRect;
82typedef struct HSD_VtxDescList HSD_VtxDescList;
83typedef struct HSD_WObj HSD_WObj;
84typedef struct HSD_WObjAnim HSD_WObjAnim;
85typedef struct HSD_WObjDesc HSD_WObjDesc;
86typedef struct HSD_WObjInfo HSD_WObjInfo;
87typedef struct PadLibData PadLibData;
88typedef struct RumbleCommand RumbleCommand;
89typedef struct RumbleInfo RumbleInfo;
90typedef struct TextKerning TextKerning;
93typedef union HSD_CObjDesc HSD_CObjDesc;
94typedef union HSD_ObjData HSD_ObjData;
95typedef union HSD_Rumble HSD_Rumble;
96typedef union HSD_TExp HSD_TExp;
97
98typedef void (*GObj_RenderFunc)(HSD_GObj* gobj, int code);
99typedef void (*HSD_ObjUpdateFunc)(void* obj, enum_t type, HSD_ObjData* fval);
100typedef void (*HSD_DevComCallback)(void*, int, void*, bool cancelflag);
101typedef void (*HSD_GObjEvent)(HSD_GObj* gobj);
102typedef void (*HSD_UserDataEvent)(void* user_data);
104typedef void (*HSD_GObjInteraction)(HSD_GObj* gobj0, HSD_GObj* gobj1);
105typedef void (*HSD_MObjSetupFunc)(HSD_MObj* mobj, u32 rendermode);
106
107#define HSD_A_S_W0 2
108#define HSD_DEFAULT_MAX_SHAPE_VERTICES 2000
109#define HSD_DEFAULT_MAX_SHAPE_NORMALS 2000
110
111#define POBJ_ANIM (1 << 3)
112#define POBJ_SKIN (0 << 12)
113#define POBJ_SHAPEANIM (1 << 12)
114#define POBJ_ENVELOPE (2 << 12)
115
116#define pobj_type(o) (o->flags & 0x3000)
117
118#define POBJ_CULLFRONT (1 << 14)
119#define POBJ_CULLBACK (1 << 15)
120
121#define SHAPESET_AVERAGE 1
122#define SHAPESET_ADDITIVE 1 << 1
123
133
140
141#define HSD_A_L_LITC_R 9
142#define HSD_A_L_LITC_G 10
143#define HSD_A_L_LITC_B 11
144#define HSD_A_L_VIS 12
145#define HSD_A_L_A0 13
146#define HSD_A_L_A1 14
147#define HSD_A_L_A2 15
148#define HSD_A_L_K0 16
149#define HSD_A_L_K1 17
150#define HSD_A_L_K2 18
151#define HSD_A_L_CUTOFF 19
152#define HSD_A_L_REFDIST 20
153#define HSD_A_L_REFBRIGHT 21
154#define HSD_A_L_LITC_A 22
155
156#define LOBJ_AMBIENT (0 << 0)
157#define LOBJ_INFINITE (1 << 0)
158#define LOBJ_POINT (2 << 0)
159#define LOBJ_SPOT (3 << 0)
160#define LOBJ_DIFFUSE (1 << 2)
161#define LOBJ_SPECULAR (1 << 3)
162#define LOBJ_ALPHA (1 << 4)
163#define LOBJ_HIDDEN (1 << 5)
164#define LOBJ_RAW_PARAM (1 << 6)
165#define LOBJ_DIFF_DIRTY (1 << 7)
166#define LOBJ_SPEC_DIRTY (1 << 8)
167
168#define LOBJ_TYPE_MASK 3
169
170#define LOBJ_LIGHT_ATTN_NONE 0
171#define LOBJ_LIGHT_ATTN 1
172
173#endif
unsigned long u32
An unsigned 32-bit integer.
Definition platform.h:26
int enum_t
The underlying type of an enum, used as a placeholder.
Definition platform.h:74
void * obj
Definition pobj.c:49
int bool
A signed integer used to contain boolean values.
Definition stdbool.h:8
Definition aobj.h:50
Definition aobj.h:40
Definition aobj.h:57
Definition archive.h:29
Definition archive.h:10
Definition archive.h:24
Definition archive.h:20
Definition archive.h:34
Definition robj.h:56
Definition cobj.h:134
Definition cobj.h:39
Definition cobj.h:139
Definition cobj.h:78
Definition cobj.h:92
Definition cobj.h:110
Definition dobj.h:24
Definition dobj.h:31
Definition dobj.h:15
Definition pobj.h:69
Definition pobj.h:63
Definition robj.h:51
Definition robj.h:41
Definition fog.h:32
Definition fog.h:42
Definition fog.h:14
Definition fog.h:46
Definition fog.h:38
Definition fog.h:22
Definition gobjproc.h:8
Definition gobj.h:25
Definition hash.h:12
Definition hash.h:28
Definition robj.h:36
Definition robj.h:31
Definition tobj.h:204
Definition jobj.h:108
Definition jobj.h:130
Definition lobj.h:102
Definition lobj.h:55
Definition lobj.h:95
Definition lobj.h:46
Definition lobj.h:78
Definition lobj.h:24
Definition lobj.h:16
Definition lobj.h:38
Definition lobj.h:30
Definition mobj.h:141
Definition mobj.h:70
Definition mobj.h:135
Definition mobj.h:81
Definition object.h:60
Definition mobj.h:89
Definition pobj.h:39
Definition pobj.h:112
Definition pobj.h:23
Definition controller.h:23
Definition rumble.h:34
Definition controller.h:27
Definition robj.h:86
Definition robj.h:73
Definition robj.h:61
Definition rumble.h:10
Definition robj.h:26
Definition robj.h:20
Definition axdriver.h:13
Definition shadow.h:15
Definition dobj.h:37
Definition pobj.h:106
Definition pobj.h:101
Definition pobj.h:90
Definition pobj.h:74
Definition spline.h:10
Definition texpdag.h:11
Definition texp.h:84
Definition tobj.h:133
Definition shadow.h:28
Definition pobj.h:53
Definition wobj.h:32
Definition wobj.h:21
Definition wobj.h:27
Definition wobj.h:13
Definition controller.h:54
Definition rumble.h:18
Definition rumble.h:28
Definition sislib.h:30
MexTK: GeneratorAppSRT.
Definition psappsrt.h:16
Definition psappsrt.h:29
void(* HSD_DevComCallback)(void *, int, void *, bool cancelflag)
Definition forward.h:100
void(* HSD_GObjInteraction)(HSD_GObj *gobj0, HSD_GObj *gobj1)
Definition forward.h:104
void(* HSD_GObjEvent)(HSD_GObj *gobj)
Definition forward.h:101
void(* HSD_MObjSetupFunc)(HSD_MObj *mobj, u32 rendermode)
Definition forward.h:105
void(* HSD_ObjUpdateFunc)(void *obj, enum_t type, HSD_ObjData *fval)
Definition forward.h:99
PObjSetupFlag
Definition forward.h:124
@ SETUP_HIGHLIGHT
Definition forward.h:127
@ SETUP_JOINT1
Definition forward.h:130
@ SETUP_REFLECTION
Definition forward.h:126
@ SETUP_JOINT0
Definition forward.h:129
@ SETUP_NORMAL
Definition forward.h:125
@ SETUP_NONE
Definition forward.h:131
@ SETUP_NORMAL_PROJECTION
Definition forward.h:128
HSD_TrspMask
Definition forward.h:134
@ HSD_TRSP_OPA
Definition forward.h:135
@ HSD_TRSP_XLU
Definition forward.h:136
@ HSD_TRSP_ALL
Definition forward.h:138
@ HSD_TRSP_TEXEDGE
Definition forward.h:137
bool(* HSD_GObjPredicate)(HSD_GObj *gobj)
Definition forward.h:103
void(* GObj_RenderFunc)(HSD_GObj *gobj, int code)
Definition forward.h:98
void(* HSD_UserDataEvent)(void *user_data)
Definition forward.h:102
Definition cobj.h:126
Definition fobj.h:65
Definition rumble.h:23
Definition texp.h:168
HSD_TExpType type
Definition texp.h:169