summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorBen Loftis <ben@harrisonconsoles.com>2018-02-16 15:09:28 -0600
committerBen Loftis <ben@harrisonconsoles.com>2018-02-17 09:24:46 -0600
commit9fe534ede838922e925cc5edb3c0d32c34ce93cf (patch)
tree9fbddb6dfa50517ea5e0c8dbb706beb59ea563e4 /gtk2_ardour
parent710066d3172f49e21722018ef8e6f24a85666277 (diff)
Shuffle order of items in status bar; change behavior per oofus on irc.
( note: this essentially reverts ed459a )
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour_ui.cc3
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc12
-rw-r--r--gtk2_ardour/disk_io_gauge.cc32
-rw-r--r--gtk2_ardour/disk_io_gauge.h5
-rw-r--r--gtk2_ardour/disk_space_gauge.cc8
-rw-r--r--gtk2_ardour/dsp_load_gauge.cc4
6 files changed, 38 insertions, 26 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index 9e6fd093b4..8ad04119e6 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -1719,8 +1719,7 @@ ARDOUR_UI::update_buffer_load ()
{
uint32_t const playback = _session ? _session->playback_load () : 100;
uint32_t const capture = _session ? _session->capture_load () : 100;
- uint32_t max_load = std::min ( playback, capture );
- disk_io_gauge.set_disk_io(max_load);
+ disk_io_gauge.set_disk_io(playback, capture);
}
void
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index 67a3f0b589..f9c10a777e 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -713,15 +713,15 @@ ARDOUR_UI::build_menu_bar ()
#ifndef __APPLE__
// OSX provides its own wallclock, thank you very much
- _status_bar_visibility.add (&wall_clock_label, X_("WallClock"), _("Wall Clock"), true);
+ _status_bar_visibility.add (&wall_clock_label, X_("WallClock"), _("Wall Clock"), false);
#endif
- _status_bar_visibility.add (&disk_space_gauge, X_("Disk"), _("Disk Space"), !Profile->get_small_screen());
- _status_bar_visibility.add (&dsp_load_gauge, X_("DSP"), _("DSP"), true);
_status_bar_visibility.add (&peak_thread_work_label,X_("Peakfile"), _("Active Peak-file Work"), false);
- _status_bar_visibility.add (&disk_io_gauge, X_("Buffers"), _("Buffers"), true);
+ _status_bar_visibility.add (&format_label, X_("Format"), _("File Format"), false);
+ _status_bar_visibility.add (&timecode_format_label, X_("TCFormat"), _("Timecode Format"), false);
_status_bar_visibility.add (&sample_rate_label, X_("Audio"), _("Audio"), true);
- _status_bar_visibility.add (&timecode_format_label, X_("TCFormat"), _("Timecode Format"), true);
- _status_bar_visibility.add (&format_label, X_("Format"), _("File Format"), true);
+ _status_bar_visibility.add (&disk_io_gauge, X_("Buffers"), _("Buffers"), true);
+ _status_bar_visibility.add (&disk_space_gauge, X_("Disk"), _("Disk Space"), !Profile->get_small_screen());
+ _status_bar_visibility.add (&dsp_load_gauge, X_("DSP"), _("DSP"), true);
ev->signal_button_press_event().connect (sigc::mem_fun (_status_bar_visibility, &VisibilityGroup::button_press_event));
ev->signal_button_release_event().connect (sigc::mem_fun (*this, &ARDOUR_UI::xrun_button_release));
diff --git a/gtk2_ardour/disk_io_gauge.cc b/gtk2_ardour/disk_io_gauge.cc
index 79ccccd9f7..7cced28cca 100644
--- a/gtk2_ardour/disk_io_gauge.cc
+++ b/gtk2_ardour/disk_io_gauge.cc
@@ -27,26 +27,36 @@
DiskIoGauge::DiskIoGauge ()
: ArdourGauge ("00.0%")
- , _disk_io (0)
+ , _disk_play (0)
+ , _disk_capture (0)
{
}
void
-DiskIoGauge::set_disk_io (const double load)
+DiskIoGauge::set_disk_io (const double play, const double capture)
{
- if (load == _disk_io) {
+ if (play == _disk_play && capture == _disk_capture) {
return;
}
- _disk_io = load;
+ _disk_play = 100.0-play;
+ _disk_capture = 100.0-capture;
char buf[64];
- snprintf (buf, sizeof (buf), "Dsk: %.1f%%", _disk_io);
+ if ( _disk_play > 1.0 && _disk_play < 10.0 && _disk_capture < 2.0 ) {
+ snprintf (buf, sizeof (buf), "Disk: %.0f%% / 0%%", _disk_play);
+ } else if ( _disk_play > 1.0 && _disk_capture < 2.0 ) {
+ snprintf (buf, sizeof (buf), "Disk: %.0f%% / 0%%", _disk_play);
+ } else if ( _disk_play > 1.0 && _disk_capture > 1.0 ) {
+ snprintf (buf, sizeof (buf), "Disk: %.0f%% / %.0f%%", _disk_play, _disk_capture);
+ } else {
+ snprintf (buf, sizeof (buf), " ");
+ }
update (std::string (buf));
}
float
DiskIoGauge::level () const {
- return (_disk_io / 100.f);
+ return min ( _disk_play / 100.f, _disk_capture / 100.f);
}
bool
@@ -58,9 +68,11 @@ DiskIoGauge::alert () const
ArdourGauge::Status
DiskIoGauge::indicator () const
{
- if (_disk_io < 50) {
+ float lvl = level();
+
+ if (lvl > 0.6) {
return ArdourGauge::Level_CRIT;
- } else if (_disk_io < 75) {
+ } else if (lvl > 0.4) {
return ArdourGauge::Level_WARN;
} else {
return ArdourGauge::Level_OK;
@@ -70,9 +82,9 @@ DiskIoGauge::indicator () const
std::string
DiskIoGauge::tooltip_text ()
{
- char buf[64];
+ char buf[128];
- snprintf (buf, sizeof (buf), _("Disk I/O cache: %.1f"), _disk_io);
+ snprintf (buf, sizeof (buf), "Disk Play/Record cache: %.0f%% / %.0f%%", _disk_play, _disk_capture);
return buf;
}
diff --git a/gtk2_ardour/disk_io_gauge.h b/gtk2_ardour/disk_io_gauge.h
index f06f610097..ba96833cc8 100644
--- a/gtk2_ardour/disk_io_gauge.h
+++ b/gtk2_ardour/disk_io_gauge.h
@@ -28,7 +28,7 @@ class DiskIoGauge : public ArdourGauge
public:
DiskIoGauge ();
- void set_disk_io (const double load);
+ void set_disk_io (const double playback, const double capture);
protected:
bool alert () const;
@@ -38,7 +38,8 @@ protected:
private:
- float _disk_io;
+ float _disk_play;
+ float _disk_capture;
};
#endif
diff --git a/gtk2_ardour/disk_space_gauge.cc b/gtk2_ardour/disk_space_gauge.cc
index 9c5d735b8d..650eebd2c8 100644
--- a/gtk2_ardour/disk_space_gauge.cc
+++ b/gtk2_ardour/disk_space_gauge.cc
@@ -58,10 +58,10 @@ DiskSpaceGauge::set_available_disk_sec (float sec)
float
DiskSpaceGauge::level () const {
- static const float lm = 6.f * 3600.f;
- if (_sec < 0) return 0;
- if (_sec > lm) return 1.0;
- return _sec / lm;
+ static const float six_hours = 6.f * 3600.f;
+ if (_sec < 0) return 1.0;
+ if (_sec > six_hours) return 0.0;
+ return (1.0 - (_sec / six_hours));
}
bool
diff --git a/gtk2_ardour/dsp_load_gauge.cc b/gtk2_ardour/dsp_load_gauge.cc
index 46ff15400b..6e3b0d382a 100644
--- a/gtk2_ardour/dsp_load_gauge.cc
+++ b/gtk2_ardour/dsp_load_gauge.cc
@@ -62,7 +62,7 @@ DspLoadGauge::set_dsp_load (const double load)
float
DspLoadGauge::level () const {
- return (100.0-_dsp_load) / 100.f;
+ return (_dsp_load / 100.f);
}
bool
@@ -84,7 +84,7 @@ DspLoadGauge::indicator () const
{
if (_dsp_load > 90) {
return ArdourGauge::Level_CRIT;
- } else if (_dsp_load > 80) {
+ } else if (_dsp_load > 75) {
return ArdourGauge::Level_WARN;
} else {
return ArdourGauge::Level_OK;