From 66a97007eb36a112f31e923c20e434ba8b39c4ba Mon Sep 17 00:00:00 2001 From: dec05eba Date: Fri, 16 Oct 2020 03:49:52 +0200 Subject: Matrix: use rapidjson instead of jsoncpp to decrease memory usage from 58mb to 24mb --- include/Program.h | 4 ++-- include/Storage.hpp | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/Program.h b/include/Program.h index cd45b30..3cbf09e 100644 --- a/include/Program.h +++ b/include/Program.h @@ -2,7 +2,6 @@ #define QUICKMEDIA_PROGRAM_H #include -#include #ifdef __cplusplus extern "C" { @@ -26,7 +25,8 @@ int exec_program(const char **args, ProgramOutputCallback output_callback, void // Return the exit status, or a negative value if waiting failed int wait_program(pid_t process_id); -bool wait_program_non_blocking(pid_t process_id, int *status); +/* Returns 1 if the program quit and exited properly (non-0 exit codes also count as exiting properly) */ +int wait_program_non_blocking(pid_t process_id, int *status); /* @args need to have at least 2 arguments. The first which is the program name diff --git a/include/Storage.hpp b/include/Storage.hpp index 8a1bbfa..10cbbb2 100644 --- a/include/Storage.hpp +++ b/include/Storage.hpp @@ -4,6 +4,10 @@ #include #include #include +#ifdef Bool +#undef Bool +#endif +#include namespace QuickMedia { // Return false to stop the iterator @@ -29,6 +33,7 @@ namespace QuickMedia { bool read_file_as_json(const Path &filepath, Json::Value &result); bool save_json_to_file_atomic(const Path &path, const Json::Value &json); + bool save_json_to_file_atomic(const Path &path, const rapidjson::Value &json); bool is_program_executable_by_name(const char *name); } \ No newline at end of file -- cgit v1.2.3