summaryrefslogtreecommitdiff
path: root/include/d/d_bg_s_sph_chk.h
blob: 376c14e438ce9948f1a5db83f5a69bc4162a30d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#ifndef D_BG_D_BG_S_SPH_CHK_H
#define D_BG_D_BG_S_SPH_CHK_H

#include "SSystem/SComponent/c_bg_s_poly_info.h"
#include "SSystem/SComponent/c_m3d_g_sph.h"
#include "d/d_bg_s_chk.h"
#include "SSystem/SComponent/c_bg_w.h"

class dBgS_SphChk : public cM3dGSph, public cBgS_PolyInfo, public cBgS_Chk, public dBgS_Chk {
public:
    dBgS_SphChk() {
        SetPolyPassChk(GetPolyPassChkInfo());
        SetGrpPassChk(GetGrpPassChkInfo());
        SetActorPid(fpcM_ERROR_PROCESS_ID_e);
        Init();
        SetCallback(NULL);
    };
    
    void Init() {
        ClearPi();
    }

    virtual ~dBgS_SphChk() {}

    typedef void(*SphChk_Callback)(dBgS_SphChk*, cBgD_Vtx_t*, int, int, int, cM3dGPla*, void*);
    void SetCallback(SphChk_Callback cb) { mpCallback = cb; }

public:
    /* 0x4c */ SphChk_Callback mpCallback;
};  // Size: 0x50

class dBgS_CamSphChk : public dBgS_SphChk {
public:
    dBgS_CamSphChk() { SetCam(); }
    virtual ~dBgS_CamSphChk() {}
};

#endif /* D_BG_D_BG_S_SPH_CHK_H */