#include <vector>
#include <string>
+#include <gtkmm/box.h>
+#include <gtkmm/button.h>
+#include <gtkmm/buttonbox.h>
+#include <gtkmm/comboboxtext.h>
#include <gtkmm/checkbutton.h>
+#include <gtkmm/expander.h>
+#include <gtkmm/notebook.h>
#include <gtkmm/spinbutton.h>
-#include <gtkmm/comboboxtext.h>
#include <gtkmm/table.h>
-#include <gtkmm/expander.h>
-#include <gtkmm/box.h>
-#include <gtkmm/buttonbox.h>
-#include <gtkmm/button.h>
#include "pbd/signals.h"
+#include "widgets/ardour_button.h"
+
#include "ardour_dialog.h"
-#include "ardour_button.h"
-class EngineControl : public ArdourDialog, public PBD::ScopedConnectionList {
- public:
+class EngineControl : public ArdourDialog, public PBD::ScopedConnectionList
+{
+public:
EngineControl ();
~EngineControl ();
void set_desired_sample_rate (uint32_t);
bool try_autostart ();
- private:
+private:
Gtk::Notebook notebook;
Gtk::Label engine_status;
Gtk::Adjustment ports_adjustment;
Gtk::SpinButton ports_spinner;
- Gtk::Label have_control_text;
- ArdourButton control_app_button;
- ArdourButton midi_devices_button;
- ArdourButton start_stop_button;
- ArdourButton update_devices_button;
- ArdourButton use_buffered_io_button;
+ Gtk::Label have_control_text;
+ ArdourWidgets::ArdourButton control_app_button;
+ ArdourWidgets::ArdourButton midi_devices_button;
+ ArdourWidgets::ArdourButton start_stop_button;
+ ArdourWidgets::ArdourButton update_devices_button;
+ ArdourWidgets::ArdourButton use_buffered_io_button;
Gtk::Button connect_disconnect_button;
/* latency measurement */
- Gtk::ComboBoxText lm_output_channel_combo;
- Gtk::ComboBoxText lm_input_channel_combo;
- Gtk::Label lm_measure_label;
- Gtk::Button lm_measure_button;
- Gtk::Button lm_use_button;
- Gtk::Button lm_back_button;
- ArdourButton lm_button_audio;
- Gtk::Label lm_title;
- Gtk::Label lm_preamble;
- Gtk::Label lm_results;
- Gtk::Table lm_table;
- Gtk::VBox lm_vbox;
- bool have_lm_results;
- bool lm_running;
+ Gtk::ComboBoxText lm_output_channel_combo;
+ Gtk::ComboBoxText lm_input_channel_combo;
+ Gtk::Label lm_measure_label;
+ Gtk::Button lm_measure_button;
+ Gtk::Button lm_use_button;
+ Gtk::Button lm_back_button;
+ ArdourWidgets::ArdourButton lm_button_audio;
+ Gtk::Label lm_title;
+ Gtk::Label lm_preamble;
+ Gtk::Label lm_results;
+ Gtk::Table lm_table;
+ Gtk::VBox lm_vbox;
+ bool have_lm_results;
+ bool lm_running;
/* MIDI Tab */
void configure_midi_devices ();
struct MidiDeviceSetting {
- std::string name;
- bool enabled;
- uint32_t input_latency;
- uint32_t output_latency;
-
- MidiDeviceSetting (std::string n, bool en = true, uint32_t inl = 0, uint32_t oul = 0)
- : name (n)
- , enabled (en)
- , input_latency (inl)
- , output_latency (oul)
- {}
+ std::string name;
+ bool enabled;
+ uint32_t input_latency;
+ uint32_t output_latency;
+
+ MidiDeviceSetting (std::string n, bool en = true, uint32_t inl = 0, uint32_t oul = 0)
+ : name (n)
+ , enabled (en)
+ , input_latency (inl)
+ , output_latency (oul)
+ {}
};
typedef boost::shared_ptr<MidiDeviceSetting> MidiDeviceSettings;
std::vector<MidiDeviceSettings> _midi_devices;
MidiDeviceSettings find_midi_device(std::string devicename) const {
- for (std::vector<MidiDeviceSettings>::const_iterator p = _midi_devices.begin(); p != _midi_devices.end(); ++p) {
- if ((*p)->name == devicename) {
- return *p;
+ for (std::vector<MidiDeviceSettings>::const_iterator p = _midi_devices.begin(); p != _midi_devices.end(); ++p) {
+ if ((*p)->name == devicename) {
+ return *p;
+ }
}
- }
- return MidiDeviceSettings();
+ return MidiDeviceSettings();
}
struct StateStruct {
- std::string backend;
- std::string driver;
- std::string device;
- std::string input_device;
- std::string output_device;
- float sample_rate;
- uint32_t buffer_size;
- uint32_t n_periods;
- uint32_t input_latency;
- uint32_t output_latency;
- uint32_t input_channels;
- uint32_t output_channels;
- bool active;
- bool use_buffered_io;
- std::string midi_option;
- std::vector<MidiDeviceSettings> midi_devices;
- time_t lru;
-
- StateStruct()
- : sample_rate (48000)
- , buffer_size (1024)
- , input_latency (0)
- , output_latency (0)
- , input_channels (0)
- , output_channels (0)
- , active (false)
- , use_buffered_io (false)
- , lru (0) {}
-
+ std::string backend;
+ std::string driver;
+ std::string device;
+ std::string input_device;
+ std::string output_device;
+ float sample_rate;
+ uint32_t buffer_size;
+ uint32_t n_periods;
+ uint32_t input_latency;
+ uint32_t output_latency;
+ uint32_t input_channels;
+ uint32_t output_channels;
+ bool active;
+ bool use_buffered_io;
+ std::string midi_option;
+ std::vector<MidiDeviceSettings> midi_devices;
+ time_t lru;
+
+ StateStruct()
+ : sample_rate (48000)
+ , buffer_size (1024)
+ , input_latency (0)
+ , output_latency (0)
+ , input_channels (0)
+ , output_channels (0)
+ , active (false)
+ , use_buffered_io (false)
+ , lru (0)
+ {}
};
typedef boost::shared_ptr<StateStruct> State;
MidiDeviceSettings _measure_midi;
void midi_latency_adjustment_changed(Gtk::Adjustment *, MidiDeviceSettings, bool);
- void midi_device_enabled_toggled(ArdourButton *, MidiDeviceSettings);
+ void midi_device_enabled_toggled(ArdourWidgets::ArdourButton *, MidiDeviceSettings);
sigc::connection lm_back_button_signal;
};