From b225ba5cc370d32c41f509c24fffdf00567fa55e Mon Sep 17 00:00:00 2001 From: onyx-and-iris Date: Fri, 12 Jul 2024 17:09:12 +0100 Subject: [PATCH] allow clear to accept either dirty func as pointer --- include/wrapper.h | 2 +- src/vmrcli.c | 4 ++-- src/wrapper.c | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/wrapper.h b/include/wrapper.h index 14db05c..c764095 100644 --- a/include/wrapper.h +++ b/include/wrapper.h @@ -41,6 +41,6 @@ bool is_mdirty(PT_VMR vmr); long macrobutton_getstatus(PT_VMR vmr, long n, float *val, long mode); long macrobutton_setstatus(PT_VMR vmr, long n, float val, long mode); -void clear_dirty(PT_VMR vmr); +void clear(PT_VMR vmr, bool (*f)(PT_VMR)); #endif /* __WRAPPER_H__ */ \ No newline at end of file diff --git a/src/vmrcli.c b/src/vmrcli.c index 289b87d..c98eece 100644 --- a/src/vmrcli.c +++ b/src/vmrcli.c @@ -175,7 +175,7 @@ int main(int argc, char *argv[]) log_info("Profile %s loaded", cvalue); set_parameter_string(vmr, "command.load", cvalue); Sleep(300); - clear_dirty(vmr); + clear(vmr, is_pdirty); } if (iflag) @@ -373,7 +373,7 @@ void parse_command(PT_VMR vmr, char *command) */ void get(PT_VMR vmr, char *command, struct result *res) { - clear_dirty(vmr); + clear(vmr, is_pdirty); if (get_parameter_float(vmr, command, &res->val.f) != 0) { res->type = STRING_T; diff --git a/src/wrapper.c b/src/wrapper.c index be0fc9b..08fb0b9 100644 --- a/src/wrapper.c +++ b/src/wrapper.c @@ -61,7 +61,7 @@ long login(PT_VMR vmr, int kind) if (rep == 0) { - clear_dirty(vmr); + clear(vmr, is_pdirty); } return rep; } @@ -157,9 +157,9 @@ long macrobutton_setstatus(PT_VMR vmr, long n, float val, long mode) return vmr->VBVMR_MacroButton_SetStatus(n, val, mode); } -void clear_dirty(PT_VMR vmr) +void clear(PT_VMR vmr, bool (*f)(PT_VMR)) { Sleep(30); - while (is_pdirty(vmr)) + while (f(vmr)) Sleep(1); } \ No newline at end of file