summaryrefslogtreecommitdiff
path: root/include/f_pc/f_pc_layer_iter.h
blob: 19130d4d673fbcd31b66c7b0b6507326b534ca83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef F_PC_LAYER_ITER_H_
#define F_PC_LAYER_ITER_H_

#include <types.h>

typedef struct layer_class layer_class;

typedef struct layer_iter {
    /* 0x0 */ void* func;
    /* 0x4 */ void* data;
} layer_iter;

typedef int (*fpcLyIt_OnlyHereFunc)(void*, void*);
typedef void* (*fpcLyIt_JudgeFunc)(void*, void*);

int fpcLyIt_OnlyHere(layer_class* i_layer, fpcLyIt_OnlyHereFunc i_func, void* i_data);
int fpcLyIt_OnlyHereLY(layer_class* i_layer, fpcLyIt_OnlyHereFunc i_func, void* i_data);
int fpcLyIt_All(fpcLyIt_OnlyHereFunc i_func, void* i_data);
void* fpcLyIt_Judge(layer_class* i_layer, fpcLyIt_JudgeFunc i_func, void* i_data);
void* fpcLyIt_AllJudge(fpcLyIt_JudgeFunc i_func, void* i_data);

#endif