tp/include/f/f_pc/f_pc_base.h

52 lines
1.3 KiB
C

#ifndef F_PC_BASE_H_
#define F_PC_BASE_H_
#include "SComponent/c_tag.h"
#include "global.h"
// #include "f/f_pc/f_pc_method.h"
#include "f/f_pc/f_pc_delete_tag.h"
#include "f/f_pc/f_pc_layer_tag.h"
#include "f/f_pc/f_pc_line_tag.h"
#include "f/f_pc/f_pc_priority.h"
#include "f/f_pc/f_pc_profile.h"
struct create_request;
struct profile_method_class;
typedef struct base_process_class {
u32 mBsType;
u32 mBsPcId;
s16 mProcName;
s8 mUnk0;
u8 mPauseFlag;
s8 mInitState;
u8 mUnk2;
s16 mBsTypeId;
process_profile_definition* mpProf;
struct create_request* mpCtRq;
layer_management_tag_class mLyTg;
line_tag mLnTg;
delete_tag_class mDtTg;
process_priority_class mPi;
process_method_class* mpPcMtd;
void* mpUserData;
u32 mParameters;
u32 mSubType;
} base_process_class;
extern "C" {
BOOL fpcBs_Is_JustOfType(s32 pType1, s32 pType2);
s32 fpcBs_MakeOfType(s32* pType);
s32 fpcBs_MakeOfId(void);
s32 fpcBs_Execute(base_process_class* pProc);
void fpcBs_DeleteAppend(base_process_class* pProc);
s32 fpcBs_IsDelete(base_process_class* pProc);
s32 fpcBs_Delete(base_process_class* pProc);
base_process_class* fpcBs_Create(s16 pProcTypeID, u32 pProcID, void* pData);
s32 fpcBs_SubCreate(base_process_class* pProc);
};
#endif