From f5caf0abae6ee897e71e7c4e905193703eb5bdf7 Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Fri, 27 Jan 2017 22:24:36 +0100 Subject: Add settings for disk cache control (enable and cache upper limit) --- src/settings.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src') diff --git a/src/settings.h b/src/settings.h index a1d5bd0..cb707ef 100644 --- a/src/settings.h +++ b/src/settings.h @@ -28,6 +28,8 @@ #include #include +#include + #include #include "atomic.h" @@ -47,6 +49,13 @@ struct Settings Atomic drumkit_file{""}; Atomic drumkit_load_status{LoadStatus::Idle}; + //! The maximum amount of memory in bytes that the AudioCache + //! is allowed to use for preloading + //! The default std::numeric_limits::max() means "unlimited" + //Atomic cache_upper_limit{std::numeric_limits::max()}; + Atomic disk_cache_upper_limit{1024*1024*1024}; + Atomic disk_cache_enable{true}; + Atomic midimap_file{""}; Atomic midimap_load_status{LoadStatus::Idle}; @@ -72,6 +81,9 @@ struct SettingsGetter SettingRef drumkit_file; SettingRef drumkit_load_status; + SettingRef disk_cache_upper_limit; + SettingRef disk_cache_enable; + SettingRef midimap_file; SettingRef midimap_load_status; @@ -93,6 +105,8 @@ struct SettingsGetter SettingsGetter(Settings& settings) : drumkit_file(settings.drumkit_file) , drumkit_load_status(settings.drumkit_load_status) + , disk_cache_upper_limit(settings.disk_cache_upper_limit) + , disk_cache_enable(settings.disk_cache_enable) , midimap_file(settings.midimap_file) , midimap_load_status(settings.midimap_load_status) , enable_velocity_modifier{settings.enable_velocity_modifier} @@ -116,6 +130,9 @@ public: Notifier drumkit_file; Notifier drumkit_load_status; + Notifier disk_cache_upper_limit; + Notifier disk_cache_enable; + Notifier midimap_file; Notifier midimap_load_status; @@ -141,6 +158,9 @@ public: EVAL(drumkit_file); EVAL(drumkit_load_status); + EVAL(disk_cache_upper_limit); + EVAL(disk_cache_enable); + EVAL(midimap_file); EVAL(midimap_load_status); -- cgit v1.2.3