summaryrefslogtreecommitdiff
path: root/src/f_pc/f_pc_create_iter.cpp
blob: 5daf12a44dddc0fb1269903ca458578238c2f1af (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
39
40
41
42
43
44
45
46
47
48
49
//
// Generated By: dol2asm
// Translation Unit: f_pc/f_pc_create_iter
//

#include "f_pc/f_pc_create_iter.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "f_pc/f_pc_create_req.h"

//
// Declarations:
//

/* 800209C8-80020A04 003C+00 s=0 e=1 z=0  None .text      fpcCtIt_Method__FPFPvPv_iPv */
s32 fpcCtIt_Method(fpcCtIt_MethodFunc pJudge, void* pUserData) {
    node_method_data iter;
    iter.mFunc = pJudge;
    iter.mpUserData = pUserData;
    return cLsIt_Method(&g_fpcCtTg_Queue, (cNdIt_MethodFunc)cTgIt_MethodCall, &iter);
}

/* 80020A04-80020A40 003C+00 s=1 e=2 z=0  None .text      fpcCtIt_Judge__FPFPvPv_PvPv */
void* fpcCtIt_Judge(fpcCtIt_JudgeFunc pJudge, void* pUserData) {
    node_judge_data iter;
    iter.mFunc = pJudge;
    iter.mpUserData = pUserData;
    return cLsIt_Judge(&g_fpcCtTg_Queue, (cNdIt_JudgeFunc)cTgIt_JudgeFilter, &iter);
}

/* 80020A40-80020A94 0054+00 s=1 e=0 z=0  None .text
 * fpcCtIt_filter_JudgeInLayer__FP10create_tagP16fpcCtIt_jilprm_c */
void* fpcCtIt_filter_JudgeInLayer(create_tag* pCreateTag, fpcCtIt_jilprm_c* pIterData) {
    create_request* create_req = static_cast<create_request*>(pCreateTag->mBase.mpTagData);
    if (create_req->mpLayer->mLayerID == pIterData->mLayerID) {
        return pIterData->mFunc((node_class*)create_req->mpRes, pIterData->mpUserData);
    } else {
        return NULL;
    }
}

/* 80020A94-80020ACC 0038+00 s=0 e=1 z=0  None .text      fpcCtIt_JudgeInLayer__FUiPFPvPv_PvPv */
void* fpcCtIt_JudgeInLayer(unsigned int pLayerID, fpcCtIt_JudgeFunc pFunc, void* pUserData) {
    fpcCtIt_jilprm_c data;
    data.mLayerID = pLayerID;
    data.mFunc = pFunc;
    data.mpUserData = pUserData;
    return fpcCtIt_Judge((fpcCtIt_JudgeFunc)fpcCtIt_filter_JudgeInLayer, &data);
}