#ifndef __ardour_meterbridge_h__
#define __ardour_meterbridge_h__
+#include <glibmm/thread.h>
+
#include <gtkmm/box.h>
#include <gtkmm/scrolledwindow.h>
#include <gtkmm/label.h>
void add_strips (ARDOUR::RouteList&);
void remove_strip (MeterStrip *);
- void update_metrics ();
void session_going_away ();
- void sync_order_keys (ARDOUR::RouteSortOrderKey src);
+ void sync_order_keys ();
void resync_order ();
+ mutable Glib::Threads::Mutex _resync_mutex;
struct MeterBridgeStrip {
MeterStrip *s;
/* everything comes before b */
return true;
}
- return a->order_key (ARDOUR::MixerSort) < b->order_key (ARDOUR::MixerSort);
+ return a->presentation_info().order() < b->presentation_info().order();
}
};
MeterStrip metrics_left;
MeterStrip metrics_right;
+ std::vector<MeterStrip *> _metrics;
Gtk::VBox metrics_vpacker_left;
Gtk::VBox metrics_vpacker_right;
void parameter_changed (std::string const & p);
void on_theme_changed ();
+
+ void on_scroll ();
+ sigc::connection scroll_connection;
+
+ int _mm_left, _mm_right;
+ ARDOUR::MeterType _mt_left, _mt_right;
};
#endif