diff options
Diffstat (limited to 'src/f_pc/f_pc_executor.cpp')
| -rw-r--r-- | src/f_pc/f_pc_executor.cpp | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/f_pc/f_pc_executor.cpp b/src/f_pc/f_pc_executor.cpp index de6b0c6b66..b2a343aab2 100644 --- a/src/f_pc/f_pc_executor.cpp +++ b/src/f_pc/f_pc_executor.cpp @@ -4,20 +4,21 @@ */ #include "f_pc/f_pc_executor.h" +#include "f_pc/f_pc_debug_sv.h" +#include "f_pc/f_pc_manager.h" #include "f_pc/f_pc_node.h" #include "f_pc/f_pc_pause.h" #include "f_pc/f_pc_searcher.h" -#include "f_pc/f_pc_debug_sv.h" base_process_class* fpcEx_Search(fpcLyIt_JudgeFunc i_judgeFunc, void* i_data) { return (base_process_class*)fpcLyIt_AllJudge(i_judgeFunc, i_data); } base_process_class* fpcEx_SearchByID(fpc_ProcID i_id) { - if (i_id + 2 <= 1) - return NULL; - - return fpcEx_Search(fpcSch_JudgeByID, &i_id); + if (!(i_id == fpcM_UNK_PROCESS_ID_e || i_id == fpcM_ERROR_PROCESS_ID_e)) { + return fpcEx_Search(fpcSch_JudgeByID, &i_id); + } + return NULL; } BOOL fpcEx_IsExist(fpc_ProcID i_id) { @@ -28,14 +29,14 @@ BOOL fpcEx_IsExist(fpc_ProcID i_id) { } } -s32 fpcEx_Execute(base_process_class* i_proc) { +int fpcEx_Execute(base_process_class* i_proc) { if (i_proc->state.init_state != 2 || fpcPause_IsEnable(i_proc, 1) == TRUE) return 0; return fpcBs_Execute(i_proc); } -s32 fpcEx_ToLineQ(base_process_class* i_proc) { +int fpcEx_ToLineQ(base_process_class* i_proc) { base_process_class* process = &i_proc->layer_tag.layer->process_node->base; if (i_proc->layer_tag.layer->layer_id == fpcLy_ROOT_e || cTg_IsUse(&process->line_tag_.base) == TRUE) { @@ -62,7 +63,7 @@ s32 fpcEx_ToLineQ(base_process_class* i_proc) { return 0; } -s32 fpcEx_ExecuteQTo(base_process_class* i_proc) { +int fpcEx_ExecuteQTo(base_process_class* i_proc) { if (fpcLyTg_QueueTo(&i_proc->layer_tag) == 1) { i_proc->state.init_state = 3; return 1; @@ -71,7 +72,7 @@ s32 fpcEx_ExecuteQTo(base_process_class* i_proc) { return 0; } -s32 fpcEx_ToExecuteQ(base_process_class* i_proc) { +int fpcEx_ToExecuteQ(base_process_class* i_proc) { process_priority_class* priority = &i_proc->priority; if (fpcLyTg_ToQueue(&i_proc->layer_tag, priority->current_info.layer_id, priority->current_info.list_id, priority->current_info.list_priority) == 1) { fpcEx_ToLineQ(i_proc); |
