From c53939587a839aa14f8d9f751e635ca2577f5824 Mon Sep 17 00:00:00 2001 From: Alessandro Toia Date: Mon, 19 Oct 2020 22:11:26 -0700 Subject: [PATCH] Consolidate gpu/cpu load value config --- src/overlay_params.cpp | 27 +++++++++++++++++++-------- src/overlay_params.h | 8 ++++---- src/vulkan.cpp | 4 ++-- 3 files changed, 25 insertions(+), 14 deletions(-) diff --git a/src/overlay_params.cpp b/src/overlay_params.cpp index 6c4ccd97..44cc86dd 100644 --- a/src/overlay_params.cpp +++ b/src/overlay_params.cpp @@ -165,6 +165,20 @@ parse_load_color(const char *str) return load_colors; } +static std::vector +parse_load_value(const char *str) +{ + std::vector load_value; + std::stringstream ss(str); + std::string token; + while (std::getline(ss, token, ',')) { + trim(token); + load_value.push_back(std::stoi(token)); + } + return load_value; +} + + static unsigned parse_unsigned(const char *str) { @@ -339,10 +353,8 @@ parse_font_glyph_ranges(const char *str) #define parse_wine_color(s) parse_color(s) #define parse_gpu_load_color(s) parse_load_color(s) #define parse_cpu_load_color(s) parse_load_color(s) -#define parse_gpu_load_high(s) parse_unsigned(s) -#define parse_gpu_load_med(s) parse_unsigned(s) -#define parse_cpu_load_high(s) parse_unsigned(s) -#define parse_cpu_load_med(s) parse_unsigned(s) +#define parse_gpu_load_value(s) parse_load_value(s) +#define parse_cpu_load_value(s) parse_load_value(s) static bool parse_help(const char *str) @@ -512,10 +524,9 @@ parse_overlay_config(struct overlay_params *params, params->permit_upload = 0; params->render_mango = 0; params->benchmark_percentiles = { "97", "AVG", "1", "0.1" }; - params->gpu_load_high = 90; - params->gpu_load_med = 60; - params->cpu_load_high = 90; - params->cpu_load_med = 60; + params->gpu_load_value = { 90, 60 }; + params->cpu_load_value = { 90, 60 }; + #ifdef HAVE_X11 diff --git a/src/overlay_params.h b/src/overlay_params.h index 48dde29d..53edcd0e 100644 --- a/src/overlay_params.h +++ b/src/overlay_params.h @@ -105,10 +105,8 @@ typedef unsigned long KeySym; OVERLAY_PARAM_CUSTOM(render_mango) \ OVERLAY_PARAM_CUSTOM(benchmark_percentiles) \ OVERLAY_PARAM_CUSTOM(help) \ - OVERLAY_PARAM_CUSTOM(gpu_load_high) \ - OVERLAY_PARAM_CUSTOM(gpu_load_med) \ - OVERLAY_PARAM_CUSTOM(cpu_load_high) \ - OVERLAY_PARAM_CUSTOM(cpu_load_med) \ + OVERLAY_PARAM_CUSTOM(gpu_load_value) \ + OVERLAY_PARAM_CUSTOM(cpu_load_value) \ OVERLAY_PARAM_CUSTOM (gpu_load_color) \ OVERLAY_PARAM_CUSTOM (cpu_load_color) @@ -172,6 +170,8 @@ struct overlay_params { unsigned cpu_color, gpu_color, vram_color, ram_color, engine_color, io_color, frametime_color, background_color, text_color, wine_color; std::vector gpu_load_color; std::vector cpu_load_color; + std::vector gpu_load_value; + std::vector cpu_load_value; int gpu_load_high, gpu_load_med, gpu_load_change; int cpu_load_high, cpu_load_med, cpu_load_change; unsigned media_player_color; diff --git a/src/vulkan.cpp b/src/vulkan.cpp index 5ed9f6a9..563080ef 100644 --- a/src/vulkan.cpp +++ b/src/vulkan.cpp @@ -1042,7 +1042,7 @@ void render_imgui(swapchain_stats& data, struct overlay_params& params, ImVec2& auto text_color = data.colors.text; if (params.enabled[OVERLAY_PARAM_ENABLED_gpu_load_change]){ auto load_color = data.colors.text; - int gpu_load = change_on_load_temp(gpu_info.load, params.gpu_load_high, params.gpu_load_med); + int gpu_load = change_on_load_temp(gpu_info.load, params.gpu_load_value[0], params.gpu_load_value[1]); // 1 is high, 2 is medium, and 3 is low load/temp switch (gpu_load) { case 1: @@ -1104,7 +1104,7 @@ void render_imgui(swapchain_stats& data, struct overlay_params& params, ImVec2& if (params.enabled[OVERLAY_PARAM_ENABLED_cpu_load_change]){ int cpu_load_percent = int(cpuStats.GetCPUDataTotal().percent); auto load_color = data.colors.text; - int cpu_load = change_on_load_temp(cpu_load_percent, params.cpu_load_high, params.cpu_load_med); + int cpu_load = change_on_load_temp(cpu_load_percent, params.cpu_load_value[0], params.cpu_load_value[1]); // 1 is high, 2 is medium, and 3 is low load/temp switch (cpu_load) { case 1: