Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
f_pc_manager.h
Go to the documentation of this file.
1#ifndef F_PC_MANAGER_H_
2#define F_PC_MANAGER_H_
3
6#include "f_pc/f_pc_leaf.h"
7#include "f_pc/f_pc_node.h"
10
11enum {
12 fpcM_ERROR_PROCESS_ID_e = 0xFFFFFFFF
13};
14
15typedef int (*FastCreateReqFunc)(void*);
16typedef void (*fpcM_ManagementFunc)(void);
17typedef int (*fpcM_DrawIteraterFunc)(void*, void*);
18
19inline fpc_ProcID fpcM_GetID(const void* i_process) {
20 return i_process != NULL ? ((base_process_class*)i_process)->id : fpcM_ERROR_PROCESS_ID_e;
21}
22
23inline s16 fpcM_GetName(const void* i_process) {
24 return ((base_process_class*)i_process)->name;
25}
26
27inline u32 fpcM_GetParam(const void* i_process) {
28 return ((base_process_class*)i_process)->parameters;
29}
30
31inline void fpcM_SetParam(void* i_process, u32 param) {
32 ((base_process_class*)i_process)->parameters = param;
33}
34
35inline s16 fpcM_GetProfName(const void* i_process) {
36 return ((base_process_class*)i_process)->profname;
37}
38
39inline fpc_ProcID fpcM_Create(s16 i_procName, FastCreateReqFunc i_createFunc, void* i_append) {
40 return fpcSCtRq_Request(fpcLy_CurrentLayer(), i_procName, (stdCreateFunc)i_createFunc, NULL,
41 i_append);
42}
43
44inline s16 fpcM_DrawPriority(const void* i_process) {
45 return (s16)fpcLf_GetPriority((const leafdraw_class*)i_process);
46}
47
48inline s32 fpcM_ChangeLayerID(void* i_process, int i_layerID) {
49 return fpcPi_Change(&((base_process_class*)i_process)->priority, i_layerID, 0xFFFD, 0xFFFD);
50}
51
52inline BOOL fpcM_IsJustType(int i_typeA, int i_typeB) {
53 return fpcBs_Is_JustOfType(i_typeA, i_typeB);
54}
55
56inline bool fpcM_IsFirstCreating(void* i_process) {
57 return ((base_process_class*)i_process)->init_state == 0;
58}
59
61 return ((base_process_class*)i_process)->profile;
62}
63
64inline void* fpcM_GetAppend(const void* i_process) {
65 return ((base_process_class*)i_process)->append;
66}
67
69 return fpcEx_IsExist(id);
70}
71
72inline void* fpcM_LyJudge(process_node_class* i_node, fpcLyIt_JudgeFunc i_func, void* i_data) {
73 return fpcLyIt_Judge(&i_node->layer, i_func, i_data);
74}
75
76inline base_process_class* fpcM_Search(fpcLyIt_JudgeFunc i_func, void* i_data) {
77 return fpcEx_Search(i_func, i_data);
78}
79
83
87
88void fpcM_Draw(void* i_process);
90s32 fpcM_Execute(void* i_process);
91s32 fpcM_Delete(void* i_process);
93void fpcM_Management(fpcM_ManagementFunc i_preExecuteFn, fpcM_ManagementFunc i_postExecuteFn);
94void fpcM_Init();
95base_process_class* fpcM_FastCreate(s16 i_procname, FastCreateReqFunc i_createReqFunc,
96 void* i_createData, void* i_append);
97s32 fpcM_IsPause(void* i_process, u8 i_flag);
98void fpcM_PauseEnable(void* i_process, u8 i_flag);
99void fpcM_PauseDisable(void* i_process, u8 i_flag);
100void* fpcM_JudgeInLayer(fpc_ProcID i_layerID, fpcCtIt_JudgeFunc i_judgeFunc, void* i_data);
101
102#endif
s16 name
Definition d_a_e_pz.cpp:1764
BOOL fpcBs_Is_JustOfType(int i_typeA, int i_typeB)
Definition f_pc_base.cpp:21
unsigned int fpc_ProcID
Definition f_pc_base.h:10
void *(* fpcCtIt_JudgeFunc)(void *, void *)
Definition f_pc_create_iter.h:10
base_process_class * fpcEx_Search(fpcLyIt_JudgeFunc i_judgeFunc, void *i_data)
Definition f_pc_executor.cpp:13
BOOL fpcEx_IsExist(fpc_ProcID i_id)
Definition f_pc_executor.cpp:26
base_process_class * fpcEx_SearchByID(fpc_ProcID i_id)
Definition f_pc_executor.cpp:18
layer_class * fpcLy_CurrentLayer()
Definition f_pc_layer.cpp:129
void * fpcLyIt_AllJudge(fpcLyIt_JudgeFunc i_func, void *i_data)
Definition f_pc_layer_iter.cpp:60
void * fpcLyIt_Judge(layer_class *i_layer, fpcLyIt_JudgeFunc i_func, void *i_data)
Definition f_pc_layer_iter.cpp:52
void *(* fpcLyIt_JudgeFunc)(void *, void *)
Definition f_pc_layer_iter.h:14
s16 fpcLf_GetPriority(const leafdraw_class *i_leaf)
Definition f_pc_leaf.cpp:10
fpc_ProcID fpcM_GetID(const void *i_process)
Definition f_pc_manager.h:19
void fpcM_Init()
Definition f_pc_manager.cpp:98
fpc_ProcID fpcM_Create(s16 i_procName, FastCreateReqFunc i_createFunc, void *i_append)
Definition f_pc_manager.h:39
process_profile_definition * fpcM_GetProfile(void *i_process)
Definition f_pc_manager.h:60
s32 fpcM_DrawIterater(fpcM_DrawIteraterFunc i_drawIterFunc)
Definition f_pc_manager.cpp:26
s32 fpcM_Delete(void *i_process)
Definition f_pc_manager.cpp:36
void(* fpcM_ManagementFunc)(void)
Definition f_pc_manager.h:16
s32 fpcM_ChangeLayerID(void *i_process, int i_layerID)
Definition f_pc_manager.h:48
s32 fpcM_IsPause(void *i_process, u8 i_flag)
Definition f_pc_manager.cpp:114
BOOL fpcM_IsCreating(fpc_ProcID i_id)
Definition f_pc_manager.cpp:41
s16 fpcM_DrawPriority(const void *i_process)
Definition f_pc_manager.h:44
void * fpcM_JudgeInLayer(fpc_ProcID i_layerID, fpcCtIt_JudgeFunc i_judgeFunc, void *i_data)
Definition f_pc_manager.cpp:129
void fpcM_Management(fpcM_ManagementFunc i_preExecuteFn, fpcM_ManagementFunc i_postExecuteFn)
Definition f_pc_manager.cpp:46
@ fpcM_ERROR_PROCESS_ID_e
Definition f_pc_manager.h:12
BOOL fpcM_IsJustType(int i_typeA, int i_typeB)
Definition f_pc_manager.h:52
void fpcM_PauseDisable(void *i_process, u8 i_flag)
Definition f_pc_manager.cpp:124
s16 fpcM_GetName(const void *i_process)
Definition f_pc_manager.h:23
void * fpcM_LyJudge(process_node_class *i_node, fpcLyIt_JudgeFunc i_func, void *i_data)
Definition f_pc_manager.h:72
int(* fpcM_DrawIteraterFunc)(void *, void *)
Definition f_pc_manager.h:17
void * fpcM_GetAppend(const void *i_process)
Definition f_pc_manager.h:64
BOOL fpcM_IsExecuting(fpc_ProcID id)
Definition f_pc_manager.h:68
base_process_class * fpcM_FastCreate(s16 i_procname, FastCreateReqFunc i_createReqFunc, void *i_createData, void *i_append)
Definition f_pc_manager.cpp:107
base_process_class * fpcM_SearchByName(s16 name)
Definition f_pc_manager.h:80
void fpcM_Draw(void *i_process)
Definition f_pc_manager.cpp:21
void fpcM_SetParam(void *i_process, u32 param)
Definition f_pc_manager.h:31
void fpcM_PauseEnable(void *i_process, u8 i_flag)
Definition f_pc_manager.cpp:119
base_process_class * fpcM_SearchByID(fpc_ProcID i_id)
Definition f_pc_manager.h:84
base_process_class * fpcM_Search(fpcLyIt_JudgeFunc i_func, void *i_data)
Definition f_pc_manager.h:76
int(* FastCreateReqFunc)(void *)
Definition f_pc_manager.h:15
u32 fpcM_GetParam(const void *i_process)
Definition f_pc_manager.h:27
bool fpcM_IsFirstCreating(void *i_process)
Definition f_pc_manager.h:56
s32 fpcM_Execute(void *i_process)
Definition f_pc_manager.cpp:31
s16 fpcM_GetProfName(const void *i_process)
Definition f_pc_manager.h:35
s32 fpcPi_Change(process_priority_class *i_procPriority, fpc_ProcID i_layerID, u16 i_listID, u16 i_priority)
Definition f_pc_priority.cpp:84
void * fpcSch_JudgeForPName(void *i_proc, void *i_data)
Definition f_pc_searcher.cpp:9
fpc_ProcID fpcSCtRq_Request(layer_class *i_layer, s16 i_procName, stdCreateFunc i_createFunc, void *param_4, void *i_append)
Definition f_pc_stdcreate_req.cpp:129
int(* stdCreateFunc)(void *, void *)
Definition f_pc_stdcreate_req.h:8
Definition f_pc_base.h:17
Definition f_pc_leaf.h:16
Definition f_pc_node.h:15
layer_class layer
Definition f_pc_node.h:18
Definition f_pc_profile.h:11
int BOOL
Definition types.h:30
unsigned long u32
Definition types.h:9
signed short int s16
Definition types.h:6
signed long s32
Definition types.h:8
unsigned char u8
Definition types.h:5