Guitarix
Loading...
Searching...
No Matches
machine.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2013 Andreas Degert
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 */
18
19#pragma once
20
21#ifndef SRC_HEADERS_MACHINE_H_
22#define SRC_HEADERS_MACHINE_H_
23
24#ifndef GUITARIX_AS_PLUGIN
25#include <boost/iostreams/device/file_descriptor.hpp>
26#include <boost/iostreams/stream.hpp>
27#include "jsonrpc_methods.h"
28#else
29#include <ext/stdio_filebuf.h>
30#include "jsonrpc_methods-generated.h"
31#endif
32#ifdef HAVE_AVAHI
33#include "avahi_register.h"
34#endif
35
36namespace gx_gui { class UiBuilderImpl; }
37
42
43namespace gx_engine {
44
56
57typedef map<string, set<void*> > output_listen_map;
58
60private:
61 sigc::connection update_timeout;
62protected:
63 sigc::signal<void,const std::string&, std::vector<gx_system::FileName> > impresp_list;
65private:
66 virtual int _get_parameter_value_int(const std::string& id) = 0;
67 virtual int _get_parameter_value_bool(const std::string& id) = 0;
68 virtual float _get_parameter_value_float(const std::string& id) = 0;
69 virtual std::string _get_parameter_value_string(const std::string& id) = 0;
70 virtual sigc::signal<void, int>& _signal_parameter_value_int(const std::string& id) = 0;
71 virtual sigc::signal<void, bool>& _signal_parameter_value_bool(const std::string& id) = 0;
72 virtual sigc::signal<void, float>& _signal_parameter_value_float(const std::string& id) = 0;
73 virtual bool update_parameter() = 0;
74protected:
76public:
77 virtual ~GxMachineBase();
78 // engine
79 virtual void set_state(GxEngineState state) = 0;
80 virtual GxEngineState get_state() = 0;
81 virtual void load_ladspalist(std::vector<std::string>& old_not_found, ladspa::LadspaPluginList& pluginlist) = 0;
82 virtual void save_ladspalist(ladspa::LadspaPluginList& pluginlist) = 0;
83 virtual void commit_ladspa_changes() = 0;
84 virtual sigc::signal<void,Plugin*,PluginChange::pc>& signal_plugin_changed() = 0;
85 virtual Plugin *pluginlist_lookup_plugin(const std::string& id) const = 0;
86 virtual bool load_unit(gx_gui::UiBuilderImpl& builder, PluginDef* pdef) = 0;
88 virtual float get_tuner_freq() = 0;
89 virtual float get_tuner_note() = 0;
90 virtual void set_oscilloscope_mul_buffer(int a) = 0;
91 virtual int get_oscilloscope_mul_buffer() = 0;
93 virtual void start_socket(sigc::slot<void> quit_mainloop, const Glib::ustring& host, int port) = 0;
94 virtual void stop_socket() = 0;
95 virtual sigc::signal<void,GxEngineState>& signal_state_change() = 0;
96 virtual void tuner_used_for_display(bool on) = 0;
97 virtual void tuner_used_by_midi(bool on) = 0;
98 virtual void tuner_switch(bool on) = 0;
99 virtual const std::vector<std::string>& get_rack_unit_order(PluginType type) = 0;
100 virtual sigc::signal<void,bool>& signal_rack_unit_order_changed() = 0;
101 virtual void remove_rack_unit(const std::string& unit, PluginType type) = 0;
102 virtual void insert_rack_unit(const std::string& unit, const std::string& before, PluginType type) = 0;
103 // tuner_switcher
104 virtual bool get_tuner_switcher_active() = 0;
105 virtual void tuner_switcher_activate(bool v) = 0;
106 virtual void tuner_switcher_deactivate() = 0;
107 virtual void tuner_switcher_toggle(bool v) = 0;
108 virtual sigc::signal<void,const Glib::ustring&,const Glib::ustring&>& tuner_switcher_signal_display() = 0;
109 virtual sigc::signal<void,TunerSwitcher::SwitcherState>& tuner_switcher_signal_set_state() = 0;
110 virtual sigc::signal<void, bool>& tuner_switcher_signal_selection_done() = 0;
111 // preset
112 virtual bool setting_is_preset() = 0;
113 virtual const Glib::ustring& get_current_bank() = 0;
115 virtual const Glib::ustring& get_current_name() = 0;
116 virtual gx_system::PresetFileGui* get_bank_file(const Glib::ustring& bank) const = 0;
117 virtual Glib::ustring get_bank_name(int n) = 0;
118 virtual void load_preset(gx_system::PresetFileGui *pf, const Glib::ustring& name) = 0;
119 virtual bool msend_midi_cc(int cc, int pgn, int bgn, int num) = 0;
120 virtual void loadstate() = 0;
121 virtual int bank_size() = 0;
122 virtual int get_bank_index(const Glib::ustring& bank) = 0;
124 virtual void set_statefilename(const std::string& fn) = 0;
125 virtual void save_to_state(bool preserve_preset=false) = 0;
126 virtual void plugin_preset_list_load(const PluginDef *pdef, gx_preset::UnitPresetList &presetnames) = 0;
127 virtual void plugin_preset_list_set(const PluginDef *pdef, bool factory, const Glib::ustring& name) = 0;
128 virtual void plugin_preset_list_sync_set(const PluginDef *pdef, bool factory, const Glib::ustring& name) = 0;
129 virtual void plugin_preset_list_set_on_idle(const PluginDef *pdef, bool factory, const Glib::ustring& name) = 0;
130 virtual void plugin_preset_list_save(const PluginDef *pdef, const Glib::ustring& name) = 0;
131 virtual void plugin_preset_list_remove(const PluginDef *pdef, const Glib::ustring& name) = 0;
132 virtual void disable_autosave(bool v) = 0;
133 virtual void disable_save_on_exit(bool v) = 0;
134 virtual sigc::signal<void>& signal_selection_changed() = 0;
135 virtual sigc::signal<void>& signal_presetlist_changed() = 0;
136 virtual gx_system::PresetFileGui *bank_insert_uri(const Glib::ustring& uri, bool move, int position) = 0;
137 virtual gx_system::PresetFileGui *bank_insert_new(const Glib::ustring& newname) = 0;
138 virtual bool rename_bank(const Glib::ustring& oldname, Glib::ustring& newname) = 0;
139 virtual bool rename_preset(gx_system::PresetFileGui& pf, const Glib::ustring& oldname, const Glib::ustring& newname) = 0;
140 virtual void bank_reorder(const std::vector<Glib::ustring>& neworder) = 0;
141 virtual void reorder_preset(gx_system::PresetFileGui& pf, const std::vector<Glib::ustring>& neworder) = 0;
142 virtual bool bank_check_reparse() = 0;
143 virtual void erase_preset(gx_system::PresetFileGui& pf, const Glib::ustring& name) = 0;
144 virtual void bank_set_flag(gx_system::PresetFileGui *pf, int flag, bool v) = 0;
145 virtual std::string bank_get_filename(const Glib::ustring& bank) = 0;
146 virtual void bank_drag_begin() = 0;
147 virtual gx_system::PresetFileGui *bank_get_file(const Glib::ustring& bank) const = 0;
149 virtual bank_iterator bank_end() = 0;
150 virtual void pf_append(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& name) = 0;
151 virtual void pf_insert_before(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& pos, const Glib::ustring& name) = 0;
152 virtual void pf_insert_after(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& pos, const Glib::ustring& name) = 0;
154 virtual bool bank_remove(const Glib::ustring& bank) = 0;
155 virtual void bank_save() = 0;
156 virtual void pf_save(gx_system::PresetFileGui& pf, const Glib::ustring& name) = 0;
157
158 virtual void next_preset_switch() = 0;
159 virtual void previus_preset_switch() = 0;
160 virtual void process_next_preset_switch(bool s) = 0;
161 virtual void process_previus_preset_switch(bool s) = 0;
162
163 // jack
164 virtual gx_jack::GxJack *get_jack() = 0;
165 virtual void set_jack_insert(bool v) = 0;
166 // pmap
167 virtual Parameter& get_parameter(const std::string& id) = 0;
168 virtual void insert_param(Glib::ustring group, Glib::ustring name) = 0;
169 virtual void set_init_values() = 0;
170 void set_update_parameter(void *control, const string& id, bool on=true);
171 virtual bool parameter_hasId(const char *p) = 0;
172 virtual bool parameter_hasId(const std::string& id) = 0;
173 virtual void reset_unit(const PluginDef *pdef) const = 0;
174 virtual bool parameter_unit_has_std_values(const PluginDef *pdef) const = 0;
175 virtual void set_parameter_value(const std::string& id, int value) = 0;
176 virtual void set_parameter_value(const std::string& id, float value) = 0;
177 virtual void set_parameter_value(const std::string& id, bool value) = 0;
178 virtual void set_parameter_value(const std::string& id, const std::string& value) = 0;
179 void set_parameter_value(const std::string& id, double value) { set_parameter_value(id, (float)value); }
180 template <class T> T get_parameter_value (const std::string& id);
181 template <class T> sigc::signal<void, T>& signal_parameter_value(const std::string& id);
182 // MidiControllerList
183 virtual bool midi_get_config_mode(int *ctl = 0) = 0;
184 virtual void midi_set_config_mode(bool v, int ctl=-1) = 0;
185 virtual sigc::signal<void>& signal_midi_changed() = 0;
186 virtual sigc::signal<void, int, int>& signal_midi_value_changed() = 0;
187 virtual void request_midi_value_update() = 0;
188 virtual int midi_size() = 0;
189 virtual midi_controller_list& midi_get(int n) = 0;
190 virtual void midi_deleteParameter(Parameter& param) = 0;
191 virtual void midi_set_current_control(int v) = 0;
192 virtual void midi_modifyCurrent(Parameter& param, float lower, float upper, bool toggle, int toggle_behaviour) = 0;
193 virtual int midi_param2controller(Parameter& param, const MidiController** p) = 0;
194 virtual void set_midi_channel(int s) = 0;
195 virtual void midi_feedback(int c, int v) = 0;
196 virtual bool get_midi_feedback() = 0;
197 virtual void set_midi_feedback(int v) = 0;
198 virtual void on_tuner_freq_changed() = 0;
199 // Convolver
200 virtual void reload_impresp_list(const std::string& path) = 0;
201 sigc::signal<void,const std::string&, std::vector<gx_system::FileName> >& signal_impresp_list() {
202 return impresp_list;
203 }
204 virtual void load_impresp_dirs(std::vector<gx_system::FileName>& dirs) = 0;
205 virtual bool read_audio(const std::string& filename, unsigned int *audio_size, int *audio_chan,
206 int *audio_type, int *audio_form, int *audio_rate, float **buffer) = 0;
207};
208
209template <> inline float GxMachineBase::get_parameter_value(const std::string& id) {
211}
212
213template <> inline int GxMachineBase::get_parameter_value(const std::string& id) {
214 return _get_parameter_value_int(id);
215}
216
217template <> inline bool GxMachineBase::get_parameter_value(const std::string& id) {
218 return _get_parameter_value_bool(id);
219}
220
221template <> inline std::string GxMachineBase::get_parameter_value(const std::string& id) {
223}
224
225template <> inline sigc::signal<void, float>& GxMachineBase::signal_parameter_value(const std::string& id) {
227}
228
229template <> inline sigc::signal<void, int>& GxMachineBase::signal_parameter_value(const std::string& id) {
231}
232
233template <> inline sigc::signal<void, bool>& GxMachineBase::signal_parameter_value(const std::string& id) {
235}
236
237
239private:
246#ifdef HAVE_AVAHI
247 AvahiService *avahi_service;
248#endif
250 Glib::ustring switch_bank;
251private:
253 void set_mute_state(int mute);
254 void do_program_change(int pgm);
255 void do_bank_change(int pgm);
256 void edge_toggle_tuner(bool v);
257 void on_impresp(const std::string& path);
258 void exit_handler(bool otherthread);
260 virtual int _get_parameter_value_int(const std::string& id);
261 virtual int _get_parameter_value_bool(const std::string& id);
262 virtual float _get_parameter_value_float(const std::string& id);
263 virtual std::string _get_parameter_value_string(const std::string& id);
264 virtual sigc::signal<void, int>& _signal_parameter_value_int(const std::string& id);
265 virtual sigc::signal<void, bool>& _signal_parameter_value_bool(const std::string& id);
266 virtual sigc::signal<void, float>& _signal_parameter_value_float(const std::string& id);
267 virtual bool update_parameter();
268public:
270 virtual ~GxMachine();
271 virtual void set_state(GxEngineState state);
273 virtual void load_ladspalist(std::vector<std::string>& old_not_found, ladspa::LadspaPluginList& pluginlist);
274 virtual void save_ladspalist(ladspa::LadspaPluginList& pluginlist);
275 virtual void commit_ladspa_changes();
276
277#ifdef GUITARIX_AS_PLUGIN
278 gx_preset::GxSettings& get_settings() {return settings;}
279
280 void timerUpdate();
281 void start_ramp_down() { engine.start_ramp_down(); }
282 void wait_ramp_down_finished() { engine.wait_ramp_down_finished(); }
283 void start_ramp_up() {engine.start_ramp_up();}
284#endif
285 virtual sigc::signal<void,Plugin*,PluginChange::pc>& signal_plugin_changed();
286 virtual Plugin *pluginlist_lookup_plugin(const std::string& id) const;
287 virtual bool load_unit(gx_gui::UiBuilderImpl& builder, PluginDef* pdef);
289 virtual float get_tuner_freq();
290 virtual float get_tuner_note();
291 virtual void set_oscilloscope_mul_buffer(int a);
294 virtual void start_socket(sigc::slot<void> quit_mainloop, const Glib::ustring& host, int port);
295 virtual void stop_socket();
296 virtual sigc::signal<void,GxEngineState>& signal_state_change();
297 virtual void tuner_used_for_display(bool on);
298 virtual void tuner_used_by_midi(bool on);
299 virtual void tuner_switch(bool on);
300 virtual const std::vector<std::string>& get_rack_unit_order(PluginType type);
301 virtual sigc::signal<void,bool>& signal_rack_unit_order_changed();
302 virtual void remove_rack_unit(const std::string& unit, PluginType type);
303 virtual void insert_rack_unit(const std::string& unit, const std::string& before, PluginType type);
304 // tuner_switcher
306 virtual void tuner_switcher_activate(bool v);
308 virtual void tuner_switcher_toggle(bool v);
309 virtual sigc::signal<void,const Glib::ustring&,const Glib::ustring&>& tuner_switcher_signal_display();
310 virtual sigc::signal<void,TunerSwitcher::SwitcherState>& tuner_switcher_signal_set_state();
311 virtual sigc::signal<void, bool>& tuner_switcher_signal_selection_done();
312 // preset
313 virtual bool setting_is_preset();
314 virtual const Glib::ustring& get_current_bank();
316 virtual const Glib::ustring& get_current_name();
317 virtual gx_system::PresetFileGui* get_bank_file(const Glib::ustring& bank) const;
318 virtual Glib::ustring get_bank_name(int n);
319 virtual void load_preset(gx_system::PresetFileGui *pf, const Glib::ustring& name);
320 virtual bool msend_midi_cc(int cc, int pgn, int bgn, int num);
321 virtual void loadstate();
322 virtual int bank_size();
323 virtual int get_bank_index(const Glib::ustring& bank);
325 virtual void set_statefilename(const std::string& fn);
326 virtual void save_to_state(bool preserve_preset=false);
327 virtual void plugin_preset_list_load(const PluginDef *pdef, gx_preset::UnitPresetList &presetnames);
328 virtual void plugin_preset_list_set(const PluginDef *pdef, bool factory, const Glib::ustring& name);
329 virtual void plugin_preset_list_sync_set(const PluginDef *pdef, bool factory, const Glib::ustring& name);
330 virtual void plugin_preset_list_set_on_idle(const PluginDef *pdef, bool factory, const Glib::ustring& name);
331 virtual void plugin_preset_list_save(const PluginDef *pdef, const Glib::ustring& name);
332 virtual void plugin_preset_list_remove(const PluginDef *pdef, const Glib::ustring& name);
333 virtual void disable_autosave(bool v);
334 virtual void disable_save_on_exit(bool v);
335 virtual sigc::signal<void>& signal_selection_changed();
336 virtual sigc::signal<void>& signal_presetlist_changed();
337 virtual gx_system::PresetFileGui *bank_insert_uri(const Glib::ustring& uri, bool move, int position);
338 virtual gx_system::PresetFileGui *bank_insert_new(const Glib::ustring& newname);
339 virtual bool rename_bank(const Glib::ustring& oldname, Glib::ustring& newname);
340 virtual bool rename_preset(gx_system::PresetFileGui& pf, const Glib::ustring& oldname, const Glib::ustring& newname);
341 virtual void bank_reorder(const std::vector<Glib::ustring>& neworder);
342 virtual void reorder_preset(gx_system::PresetFileGui& pf, const std::vector<Glib::ustring>& neworder);
343 virtual bool bank_check_reparse();
344 virtual void erase_preset(gx_system::PresetFileGui& pf, const Glib::ustring& name);
345 virtual void bank_set_flag(gx_system::PresetFileGui *pf, int flag, bool v);
346 virtual std::string bank_get_filename(const Glib::ustring& bank);
347 virtual void bank_drag_begin();
348 virtual gx_system::PresetFileGui *bank_get_file(const Glib::ustring& bank) const;
351 virtual void pf_append(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& name);
352 virtual void pf_insert_before(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& pos, const Glib::ustring& name);
353 virtual void pf_insert_after(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& pos, const Glib::ustring& name);
355 virtual bool bank_remove(const Glib::ustring& bank);
356 virtual void bank_save();
357 virtual void pf_save(gx_system::PresetFileGui& pf, const Glib::ustring& name);
358
359 virtual void next_preset_switch();
360 virtual void previus_preset_switch();
361 virtual void process_next_preset_switch(bool s);
362 virtual void process_previus_preset_switch(bool s);
363
364 // jack
366 virtual void set_jack_insert(bool v);
367 // pmap
368 virtual Parameter& get_parameter(const char *p);
369 virtual Parameter& get_parameter(const std::string& id);
370 virtual void insert_param(Glib::ustring group, Glib::ustring name);
371 virtual void set_init_values();
372 virtual bool parameter_hasId(const char *p);
373 virtual bool parameter_hasId(const std::string& id);
374 virtual void reset_unit(const PluginDef *pdef) const;
375 virtual bool parameter_unit_has_std_values(const PluginDef *pdef) const;
376 virtual void set_parameter_value(const std::string& id, int value);
377 virtual void set_parameter_value(const std::string& id, bool value);
378 virtual void set_parameter_value(const std::string& id, float value);
379 virtual void set_parameter_value(const std::string& id, const std::string& value);
380 // bool ui_f_update(const std::string& id, float value);
381 // MidiControllerList
382 virtual bool midi_get_config_mode(int *ctl = 0);
383 virtual void midi_set_config_mode(bool v, int ctl=-1);
384 virtual sigc::signal<void>& signal_midi_changed();
385 virtual sigc::signal<void, int, int>& signal_midi_value_changed();
387 virtual int midi_size();
389 virtual void midi_deleteParameter(Parameter& param);
390 virtual void midi_set_current_control(int v);
391 virtual void midi_modifyCurrent(Parameter& param, float lower, float upper, bool toggle, int toggle_behaviour);
392 virtual int midi_param2controller(Parameter& param, const MidiController** p);
393 virtual void set_midi_channel(int s);
394 virtual void midi_feedback(int c, int v);
395 virtual bool get_midi_feedback();
396 virtual void set_midi_feedback(int v);
397 virtual void on_tuner_freq_changed();
398 // Convolver
399 virtual void reload_impresp_list(const std::string& path);
400 virtual void load_impresp_dirs(std::vector<gx_system::FileName>& dirs);
401 virtual bool read_audio(const std::string& filename, unsigned int *audio_size, int *audio_chan,
402 int *audio_type, int *audio_form, int *audio_rate, float **buffer);
403};
404
406private:
411 sigc::signal<void,GxEngineState> engine_state_change;
412 sigc::signal<void> selection_changed;
413 sigc::signal<void> presetlist_changed;
414 Glib::RefPtr<Gio::Socket> socket;
415#ifdef GUITARIX_AS_PLUGIN
416 __gnu_cxx::stdio_filebuf<char> *writebuf;
417 ostream *os;
418#else
419 boost::iostreams::file_descriptor_sink *writebuf;
420 boost::iostreams::stream<boost::iostreams::file_descriptor_sink> *os;
421#endif
423 std::vector<gx_system::JsonStringParser*> notify_list;
424 sigc::connection idle_conn;
426 sigc::signal<void> midi_changed;
427 sigc::signal<void, int, int> midi_value_changed;
429 Glib::ustring current_bank;
430 Glib::ustring current_preset;
433 sigc::signal<void,const Glib::ustring&,const Glib::ustring&> tuner_switcher_display;
434 sigc::signal<void,TunerSwitcher::SwitcherState> tuner_switcher_set_state;
435 sigc::signal<void, bool> tuner_switcher_selection_done;
436 sigc::signal<void,Plugin*,PluginChange::pc> plugin_changed;
437private:
438 const jsonrpc_method_def& start_call(jsonrpc_method m_id);
439 void send();
440 void socket_error(int loc);
443 bool socket_input_handler(Glib::IOCondition cond);
448 int load_remote_ui(const UiBuilder& builder, int form);
450 const gx_system::JsonException& e, const char *method=0);
454 void create_bluetooth_socket(const Glib::ustring& bdaddr);
457 void midi_set_last_controller_value(int ctl, int v);
458 virtual int _get_parameter_value_int(const std::string& id);
459 virtual int _get_parameter_value_bool(const std::string& id);
460 virtual float _get_parameter_value_float(const std::string& id);
461 virtual std::string _get_parameter_value_string(const std::string& id);
462 virtual sigc::signal<void, int>& _signal_parameter_value_int(const std::string& id);
463 virtual sigc::signal<void, bool>& _signal_parameter_value_bool(const std::string& id);
464 virtual sigc::signal<void, float>& _signal_parameter_value_float(const std::string& id);
465 virtual bool update_parameter();
466
467public:
470 virtual void set_state(GxEngineState state);
472 virtual void load_ladspalist(std::vector<std::string>& old_not_found, ladspa::LadspaPluginList& pluginlist);
474 virtual void commit_ladspa_changes();
475 virtual sigc::signal<void,Plugin*,PluginChange::pc>& signal_plugin_changed();
476 virtual Plugin *pluginlist_lookup_plugin(const std::string& id) const;
477 virtual bool load_unit(gx_gui::UiBuilderImpl& builder, PluginDef* pdef);
479 virtual float get_tuner_freq();
480 virtual float get_tuner_note();
481 virtual void set_oscilloscope_mul_buffer(int a);
484 virtual void start_socket(sigc::slot<void> quit_mainloop, const Glib::ustring& host, int port);
485 virtual void stop_socket();
486 virtual sigc::signal<void,GxEngineState>& signal_state_change();
487 virtual void tuner_used_for_display(bool on);
488 virtual void tuner_used_by_midi(bool on);
489 virtual void tuner_switch(bool on);
490 virtual const std::vector<std::string>& get_rack_unit_order(PluginType type);
491 virtual sigc::signal<void,bool>& signal_rack_unit_order_changed();
492 virtual void remove_rack_unit(const std::string& unit, PluginType type);
493 virtual void insert_rack_unit(const std::string& unit, const std::string& before, PluginType type);
494 // tuner_switcher
496 virtual void tuner_switcher_activate(bool v);
498 virtual void tuner_switcher_toggle(bool v);
499 virtual sigc::signal<void,const Glib::ustring&,const Glib::ustring&>& tuner_switcher_signal_display();
500 virtual sigc::signal<void,TunerSwitcher::SwitcherState>& tuner_switcher_signal_set_state();
501 virtual sigc::signal<void, bool>& tuner_switcher_signal_selection_done();
502 // preset
503 virtual bool setting_is_preset();
504 virtual const Glib::ustring& get_current_bank();
506 virtual const Glib::ustring& get_current_name();
507 virtual gx_system::PresetFileGui* get_bank_file(const Glib::ustring& bank) const;
508 virtual Glib::ustring get_bank_name(int n);
509 virtual void load_preset(gx_system::PresetFileGui *pf, const Glib::ustring& name);
510 virtual bool msend_midi_cc(int cc, int pgn, int bgn, int num);
511 virtual void loadstate();
512 virtual int bank_size();
513 virtual int get_bank_index(const Glib::ustring& bank);
515 virtual void set_statefilename(const std::string& fn);
516 virtual void save_to_state(bool preserve_preset=false);
517 virtual void plugin_preset_list_load(const PluginDef *pdef, gx_preset::UnitPresetList &presetnames);
518 virtual void plugin_preset_list_set(const PluginDef *pdef, bool factory, const Glib::ustring& name);
519 virtual void plugin_preset_list_sync_set(const PluginDef *pdef, bool factory, const Glib::ustring& name);
520 virtual void plugin_preset_list_set_on_idle(const PluginDef *pdef, bool factory, const Glib::ustring& name);
521 virtual void plugin_preset_list_save(const PluginDef *pdef, const Glib::ustring& name);
522 virtual void plugin_preset_list_remove(const PluginDef *pdef, const Glib::ustring& name);
523 virtual void disable_autosave(bool v);
524 virtual void disable_save_on_exit(bool v);
525 virtual sigc::signal<void>& signal_selection_changed();
526 virtual sigc::signal<void>& signal_presetlist_changed();
527 virtual gx_system::PresetFileGui *bank_insert_uri(const Glib::ustring& uri, bool move, int position);
528 virtual gx_system::PresetFileGui *bank_insert_new(const Glib::ustring& newname);
529 virtual bool rename_bank(const Glib::ustring& oldname, Glib::ustring& newname);
530 virtual bool rename_preset(gx_system::PresetFileGui& pf, const Glib::ustring& oldname, const Glib::ustring& newname);
531 virtual void bank_reorder(const std::vector<Glib::ustring>& neworder);
532 virtual void reorder_preset(gx_system::PresetFileGui& pf, const std::vector<Glib::ustring>& neworder);
533 virtual bool bank_check_reparse();
534 virtual void erase_preset(gx_system::PresetFileGui& pf, const Glib::ustring& name);
535 virtual void bank_set_flag(gx_system::PresetFileGui *pf, int flag, bool v);
536 virtual std::string bank_get_filename(const Glib::ustring& bank);
537 virtual void bank_drag_begin();
538 virtual gx_system::PresetFileGui *bank_get_file(const Glib::ustring& bank) const;
541 virtual void pf_append(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& name);
542 virtual void pf_insert_before(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& pos, const Glib::ustring& name);
543 virtual void pf_insert_after(gx_system::PresetFileGui& pf, const Glib::ustring& src, gx_system::PresetFileGui& pftgt, const Glib::ustring& pos, const Glib::ustring& name);
545 virtual bool bank_remove(const Glib::ustring& bank);
546 virtual void bank_save();
547 virtual void pf_save(gx_system::PresetFileGui& pf, const Glib::ustring& name);
548
549 virtual void next_preset_switch();
550 virtual void previus_preset_switch();
551 virtual void process_next_preset_switch(bool s);
552 virtual void process_previus_preset_switch(bool s);
553
554 // jack
556 virtual void set_jack_insert(bool v);
557 // pmap
558 virtual Parameter& get_parameter(const char *p);
559 virtual Parameter& get_parameter(const std::string& id);
560 virtual void insert_param(Glib::ustring group, Glib::ustring name);
561 virtual void set_init_values();
562 virtual bool parameter_hasId(const char *p);
563 virtual bool parameter_hasId(const std::string& id);
564 virtual void reset_unit(const PluginDef *pdef) const;
565 virtual bool parameter_unit_has_std_values(const PluginDef *pdef) const;
566 virtual void set_parameter_value(const std::string& id, int value);
567 virtual void set_parameter_value(const std::string& id, bool value);
568 virtual void set_parameter_value(const std::string& id, float value);
569 virtual void set_parameter_value(const std::string& id, const std::string& value);
570
571 // MidiControllerList
572 virtual bool midi_get_config_mode(int *ctl = 0);
573 virtual void midi_set_config_mode(bool v, int ctl=-1);
574 virtual sigc::signal<void>& signal_midi_changed();
575 virtual sigc::signal<void, int, int>& signal_midi_value_changed();
577 virtual int midi_size();
579 virtual void midi_deleteParameter(Parameter& param);
580 virtual void midi_set_current_control(int v);
581 virtual void midi_modifyCurrent(Parameter& param, float lower, float upper, bool toggle, int toggle_behaviour);
582 virtual int midi_param2controller(Parameter& param, const MidiController** p);
583 virtual void set_midi_channel(int s);
584 virtual void midi_feedback(int c, int v);
585 virtual bool get_midi_feedback();
586 virtual void set_midi_feedback(int v);
587 virtual void on_tuner_freq_changed();
588 // Convolver
589 virtual void reload_impresp_list(const std::string& path);
590 virtual void load_impresp_dirs(std::vector<gx_system::FileName>& dirs);
591 virtual bool read_audio(const std::string& filename, unsigned int *audio_size, int *audio_chan,
592 int *audio_type, int *audio_form, int *audio_rate, float **buffer);
593};
594
595} // namespace gx_engine
596
597#endif // SRC_HEADERS_MACHINE_H_
virtual void previus_preset_switch()=0
virtual bool convert_preset(gx_system::PresetFileGui &pf)=0
virtual std::string _get_parameter_value_string(const std::string &id)=0
virtual void request_midi_value_update()=0
virtual int get_oscilloscope_mul_buffer()=0
virtual sigc::signal< void, const Glib::ustring &, const Glib::ustring & > & tuner_switcher_signal_display()=0
virtual bank_iterator bank_end()=0
virtual void process_previus_preset_switch(bool s)=0
virtual void save_ladspalist(ladspa::LadspaPluginList &pluginlist)=0
virtual gx_system::PresetFileGui * bank_get_file(const Glib::ustring &bank) const =0
virtual int midi_param2controller(Parameter &param, const MidiController **p)=0
virtual void load_ladspalist(std::vector< std::string > &old_not_found, ladspa::LadspaPluginList &pluginlist)=0
virtual void tuner_switch(bool on)=0
virtual void process_next_preset_switch(bool s)=0
virtual void set_parameter_value(const std::string &id, float value)=0
virtual gx_system::PresetFileGui * bank_insert_new(const Glib::ustring &newname)=0
virtual void pf_insert_after(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &pos, const Glib::ustring &name)=0
virtual Parameter & get_parameter(const std::string &id)=0
virtual bool msend_midi_cc(int cc, int pgn, int bgn, int num)=0
virtual void plugin_preset_list_load(const PluginDef *pdef, gx_preset::UnitPresetList &presetnames)=0
virtual bank_iterator bank_begin()=0
virtual int _get_parameter_value_bool(const std::string &id)=0
virtual void disable_save_on_exit(bool v)=0
virtual bool load_unit(gx_gui::UiBuilderImpl &builder, PluginDef *pdef)=0
virtual sigc::signal< void, GxEngineState > & signal_state_change()=0
void set_parameter_value(const std::string &id, double value)
Definition machine.h:179
virtual sigc::signal< void, float > & _signal_parameter_value_float(const std::string &id)=0
virtual void set_parameter_value(const std::string &id, bool value)=0
virtual void start_socket(sigc::slot< void > quit_mainloop, const Glib::ustring &host, int port)=0
virtual void save_to_state(bool preserve_preset=false)=0
virtual bool setting_is_preset()=0
virtual int _get_parameter_value_int(const std::string &id)=0
virtual sigc::signal< void > & signal_selection_changed()=0
virtual sigc::signal< void, bool > & tuner_switcher_signal_selection_done()=0
virtual void insert_param(Glib::ustring group, Glib::ustring name)=0
virtual gx_system::CmdlineOptions & get_options() const =0
virtual gx_system::PresetFileGui * bank_insert_uri(const Glib::ustring &uri, bool move, int position)=0
virtual void plugin_preset_list_set(const PluginDef *pdef, bool factory, const Glib::ustring &name)=0
virtual sigc::signal< void, TunerSwitcher::SwitcherState > & tuner_switcher_signal_set_state()=0
virtual bool rename_preset(gx_system::PresetFileGui &pf, const Glib::ustring &oldname, const Glib::ustring &newname)=0
virtual int get_bank_index(const Glib::ustring &bank)=0
virtual void loadstate()=0
virtual gx_system::PresetFileGui * get_current_bank_file()=0
virtual bool get_midi_feedback()=0
virtual void create_default_scratch_preset()=0
virtual void midi_set_current_control(int v)=0
virtual void tuner_switcher_deactivate()=0
virtual Glib::ustring get_bank_name(int n)=0
output_listen_map update_map
Definition machine.h:64
virtual bool update_parameter()=0
virtual void reset_unit(const PluginDef *pdef) const =0
virtual void set_parameter_value(const std::string &id, const std::string &value)=0
virtual void load_preset(gx_system::PresetFileGui *pf, const Glib::ustring &name)=0
virtual void midi_deleteParameter(Parameter &param)=0
virtual void insert_rack_unit(const std::string &unit, const std::string &before, PluginType type)=0
virtual float get_tuner_note()=0
virtual sigc::signal< void > & signal_midi_changed()=0
virtual void set_statefilename(const std::string &fn)=0
virtual void midi_set_config_mode(bool v, int ctl=-1)=0
virtual const Glib::ustring & get_current_name()=0
virtual void reload_impresp_list(const std::string &path)=0
virtual void midi_feedback(int c, int v)=0
virtual void remove_rack_unit(const std::string &unit, PluginType type)=0
virtual void pf_save(gx_system::PresetFileGui &pf, const Glib::ustring &name)=0
virtual void tuner_switcher_activate(bool v)=0
virtual void disable_autosave(bool v)=0
virtual void bank_reorder(const std::vector< Glib::ustring > &neworder)=0
virtual sigc::signal< void > & signal_presetlist_changed()=0
virtual bool parameter_unit_has_std_values(const PluginDef *pdef) const =0
virtual bool bank_check_reparse()=0
virtual void plugin_preset_list_sync_set(const PluginDef *pdef, bool factory, const Glib::ustring &name)=0
virtual void set_init_values()=0
virtual void set_state(GxEngineState state)=0
virtual void bank_save()=0
virtual void commit_ladspa_changes()=0
sigc::signal< void, const std::string &, std::vector< gx_system::FileName > > & signal_impresp_list()
Definition machine.h:201
virtual sigc::signal< void, int > & _signal_parameter_value_int(const std::string &id)=0
virtual sigc::signal< void, Plugin *, PluginChange::pc > & signal_plugin_changed()=0
virtual void set_midi_channel(int s)=0
virtual bool parameter_hasId(const char *p)=0
virtual void erase_preset(gx_system::PresetFileGui &pf, const Glib::ustring &name)=0
virtual void plugin_preset_list_save(const PluginDef *pdef, const Glib::ustring &name)=0
void set_update_parameter(void *control, const string &id, bool on=true)
virtual int midi_size()=0
virtual bool rename_bank(const Glib::ustring &oldname, Glib::ustring &newname)=0
virtual void tuner_switcher_toggle(bool v)=0
virtual std::string bank_get_filename(const Glib::ustring &bank)=0
virtual void tuner_used_by_midi(bool on)=0
virtual float get_tuner_freq()=0
T get_parameter_value(const std::string &id)
sigc::signal< void, T > & signal_parameter_value(const std::string &id)
virtual Plugin * pluginlist_lookup_plugin(const std::string &id) const =0
virtual bool get_tuner_switcher_active()=0
virtual const Glib::ustring & get_current_bank()=0
sigc::connection update_timeout
Definition machine.h:61
virtual void pf_insert_before(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &pos, const Glib::ustring &name)=0
virtual const std::vector< std::string > & get_rack_unit_order(PluginType type)=0
virtual void next_preset_switch()=0
virtual float _get_parameter_value_float(const std::string &id)=0
sigc::signal< void, const std::string &, std::vector< gx_system::FileName > > impresp_list
Definition machine.h:63
virtual void set_oscilloscope_mul_buffer(int a)=0
virtual GxEngineState get_state()=0
virtual sigc::signal< void, bool > & _signal_parameter_value_bool(const std::string &id)=0
virtual gx_system::PresetFileGui * get_bank_file(const Glib::ustring &bank) const =0
virtual void set_parameter_value(const std::string &id, int value)=0
virtual midi_controller_list & midi_get(int n)=0
virtual void bank_set_flag(gx_system::PresetFileGui *pf, int flag, bool v)=0
virtual void load_impresp_dirs(std::vector< gx_system::FileName > &dirs)=0
virtual void bank_drag_begin()=0
virtual void on_tuner_freq_changed()=0
virtual void set_jack_insert(bool v)=0
virtual void reorder_preset(gx_system::PresetFileGui &pf, const std::vector< Glib::ustring > &neworder)=0
virtual void plugin_preset_list_remove(const PluginDef *pdef, const Glib::ustring &name)=0
virtual void stop_socket()=0
virtual void midi_modifyCurrent(Parameter &param, float lower, float upper, bool toggle, int toggle_behaviour)=0
virtual void pf_append(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &name)=0
virtual sigc::signal< void, bool > & signal_rack_unit_order_changed()=0
virtual bool parameter_hasId(const std::string &id)=0
virtual int bank_size()=0
virtual bool bank_remove(const Glib::ustring &bank)=0
virtual sigc::signal< void, int, int > & signal_midi_value_changed()=0
virtual void set_midi_feedback(int v)=0
virtual bool read_audio(const std::string &filename, unsigned int *audio_size, int *audio_chan, int *audio_type, int *audio_form, int *audio_rate, float **buffer)=0
virtual gx_jack::GxJack * get_jack()=0
virtual void pluginlist_append_rack(UiBuilderBase &ui)=0
virtual void plugin_preset_list_set_on_idle(const PluginDef *pdef, bool factory, const Glib::ustring &name)=0
virtual void tuner_used_for_display(bool on)=0
virtual bool midi_get_config_mode(int *ctl=0)=0
virtual void load_impresp_dirs(std::vector< gx_system::FileName > &dirs)
virtual sigc::signal< void, bool > & _signal_parameter_value_bool(const std::string &id)
virtual sigc::signal< void > & signal_presetlist_changed()
virtual sigc::signal< void, GxEngineState > & signal_state_change()
virtual void set_parameter_value(const std::string &id, float value)
virtual void request_midi_value_update()
virtual void set_parameter_value(const std::string &id, bool value)
virtual void pf_insert_before(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &pos, const Glib::ustring &name)
virtual void pf_insert_after(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &pos, const Glib::ustring &name)
virtual void reorder_preset(gx_system::PresetFileGui &pf, const std::vector< Glib::ustring > &neworder)
Glib::ustring switch_bank
Definition machine.h:250
virtual const std::vector< std::string > & get_rack_unit_order(PluginType type)
virtual bool load_unit(gx_gui::UiBuilderImpl &builder, PluginDef *pdef)
virtual void erase_preset(gx_system::PresetFileGui &pf, const Glib::ustring &name)
virtual void process_previus_preset_switch(bool s)
virtual GxEngineState get_state()
virtual void tuner_switcher_toggle(bool v)
virtual midi_controller_list & midi_get(int n)
virtual void save_to_state(bool preserve_preset=false)
virtual void bank_reorder(const std::vector< Glib::ustring > &neworder)
void do_bank_change(int pgm)
virtual void previus_preset_switch()
virtual void start_socket(sigc::slot< void > quit_mainloop, const Glib::ustring &host, int port)
virtual void set_statefilename(const std::string &fn)
virtual void process_next_preset_switch(bool s)
void exit_handler(bool otherthread)
ParamMap & pmap
Definition machine.h:249
virtual float get_tuner_note()
virtual gx_system::PresetFileGui * bank_insert_new(const Glib::ustring &newname)
gx_preset::GxSettings settings
Definition machine.h:243
virtual bank_iterator bank_end()
virtual gx_jack::GxJack * get_jack()
virtual void tuner_switcher_deactivate()
virtual sigc::signal< void > & signal_selection_changed()
virtual void disable_autosave(bool v)
virtual sigc::signal< void, float > & _signal_parameter_value_float(const std::string &id)
void do_program_change(int pgm)
virtual int midi_size()
virtual void stop_socket()
virtual sigc::signal< void, int, int > & signal_midi_value_changed()
virtual int get_oscilloscope_mul_buffer()
virtual void set_state(GxEngineState state)
virtual void commit_ladspa_changes()
virtual Plugin * pluginlist_lookup_plugin(const std::string &id) const
virtual void set_parameter_value(const std::string &id, int value)
virtual bool msend_midi_cc(int cc, int pgn, int bgn, int num)
virtual void reset_unit(const PluginDef *pdef) const
virtual bool parameter_hasId(const char *p)
virtual void midi_set_current_control(int v)
virtual bool midi_get_config_mode(int *ctl=0)
virtual float _get_parameter_value_float(const std::string &id)
virtual void loadstate()
virtual void pluginlist_append_rack(UiBuilderBase &ui)
virtual gx_system::CmdlineOptions & get_options() const
void edge_toggle_tuner(bool v)
virtual void tuner_used_by_midi(bool on)
virtual void midi_deleteParameter(Parameter &param)
virtual std::string _get_parameter_value_string(const std::string &id)
virtual bool parameter_unit_has_std_values(const PluginDef *pdef) const
virtual bool get_tuner_switcher_active()
virtual bool read_audio(const std::string &filename, unsigned int *audio_size, int *audio_chan, int *audio_type, int *audio_form, int *audio_rate, float **buffer)
virtual void load_ladspalist(std::vector< std::string > &old_not_found, ladspa::LadspaPluginList &pluginlist)
void on_impresp(const std::string &path)
virtual void set_midi_channel(int s)
virtual void plugin_preset_list_set_on_idle(const PluginDef *pdef, bool factory, const Glib::ustring &name)
virtual void remove_rack_unit(const std::string &unit, PluginType type)
virtual void save_ladspalist(ladspa::LadspaPluginList &pluginlist)
gx_system::CmdlineOptions & options
Definition machine.h:240
virtual int get_bank_index(const Glib::ustring &bank)
virtual void tuner_used_for_display(bool on)
virtual int bank_size()
virtual void midi_set_config_mode(bool v, int ctl=-1)
virtual bool bank_check_reparse()
virtual gx_system::PresetFileGui * get_current_bank_file()
virtual bool rename_preset(gx_system::PresetFileGui &pf, const Glib::ustring &oldname, const Glib::ustring &newname)
virtual Parameter & get_parameter(const char *p)
virtual void plugin_preset_list_sync_set(const PluginDef *pdef, bool factory, const Glib::ustring &name)
virtual sigc::signal< void, Plugin *, PluginChange::pc > & signal_plugin_changed()
virtual void disable_save_on_exit(bool v)
virtual float get_tuner_freq()
virtual int _get_parameter_value_bool(const std::string &id)
virtual void set_oscilloscope_mul_buffer(int a)
virtual void plugin_preset_list_remove(const PluginDef *pdef, const Glib::ustring &name)
virtual void tuner_switcher_activate(bool v)
virtual void load_preset(gx_system::PresetFileGui *pf, const Glib::ustring &name)
virtual void set_parameter_value(const std::string &id, const std::string &value)
virtual sigc::signal< void, bool > & signal_rack_unit_order_changed()
virtual void create_default_scratch_preset()
virtual void bank_save()
virtual int midi_param2controller(Parameter &param, const MidiController **p)
void process_cmdline_bank_preset()
virtual gx_system::PresetFileGui * get_bank_file(const Glib::ustring &bank) const
void set_mute_state(int mute)
virtual void midi_modifyCurrent(Parameter &param, float lower, float upper, bool toggle, int toggle_behaviour)
virtual void pf_append(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &name)
virtual bool rename_bank(const Glib::ustring &oldname, Glib::ustring &newname)
virtual void plugin_preset_list_save(const PluginDef *pdef, const Glib::ustring &name)
virtual sigc::signal< void > & signal_midi_changed()
virtual void bank_set_flag(gx_system::PresetFileGui *pf, int flag, bool v)
virtual void on_tuner_freq_changed()
virtual void next_preset_switch()
virtual void set_init_values()
virtual void midi_feedback(int c, int v)
virtual sigc::signal< void, const Glib::ustring &, const Glib::ustring & > & tuner_switcher_signal_display()
virtual bool bank_remove(const Glib::ustring &bank)
virtual const Glib::ustring & get_current_bank()
virtual const Glib::ustring & get_current_name()
GxService * sock
Definition machine.h:245
virtual gx_system::PresetFileGui * bank_get_file(const Glib::ustring &bank) const
virtual sigc::signal< void, TunerSwitcher::SwitcherState > & tuner_switcher_signal_set_state()
virtual bool get_midi_feedback()
virtual sigc::signal< void, int > & _signal_parameter_value_int(const std::string &id)
virtual void plugin_preset_list_load(const PluginDef *pdef, gx_preset::UnitPresetList &presetnames)
virtual void set_jack_insert(bool v)
virtual void reload_impresp_list(const std::string &path)
virtual void bank_drag_begin()
GxMachine(gx_system::CmdlineOptions &options)
TunerSwitcher tuner_switcher
Definition machine.h:244
gx_jack::GxJack jack
Definition machine.h:242
virtual bank_iterator bank_begin()
virtual Glib::ustring get_bank_name(int n)
virtual void plugin_preset_list_set(const PluginDef *pdef, bool factory, const Glib::ustring &name)
virtual std::string bank_get_filename(const Glib::ustring &bank)
virtual Parameter & get_parameter(const std::string &id)
virtual bool convert_preset(gx_system::PresetFileGui &pf)
virtual void set_midi_feedback(int v)
virtual bool parameter_hasId(const std::string &id)
virtual int _get_parameter_value_int(const std::string &id)
virtual gx_system::PresetFileGui * bank_insert_uri(const Glib::ustring &uri, bool move, int position)
virtual void insert_param(Glib::ustring group, Glib::ustring name)
virtual bool setting_is_preset()
virtual void tuner_switch(bool on)
virtual void insert_rack_unit(const std::string &unit, const std::string &before, PluginType type)
virtual void pf_save(gx_system::PresetFileGui &pf, const Glib::ustring &name)
virtual bool update_parameter()
virtual sigc::signal< void, bool > & tuner_switcher_signal_selection_done()
virtual gx_system::PresetFileGui * bank_insert_new(const Glib::ustring &newname)
gx_system::CmdlineOptions & options
Definition machine.h:407
int midi_get_last_controller_value(int ctl)
virtual void set_statefilename(const std::string &fn)
virtual bool parameter_hasId(const char *p)
virtual void set_midi_channel(int s)
virtual gx_jack::GxJack * get_jack()
virtual void create_default_scratch_preset()
virtual void tuner_used_for_display(bool on)
virtual sigc::signal< void, bool > & _signal_parameter_value_bool(const std::string &id)
virtual void commit_ladspa_changes()
virtual void bank_reorder(const std::vector< Glib::ustring > &neworder)
virtual void previus_preset_switch()
virtual sigc::signal< void, int, int > & signal_midi_value_changed()
virtual void load_ladspalist(std::vector< std::string > &old_not_found, ladspa::LadspaPluginList &pluginlist)
virtual Glib::ustring get_bank_name(int n)
virtual gx_system::PresetFileGui * bank_get_file(const Glib::ustring &bank) const
virtual void tuner_switch(bool on)
virtual sigc::signal< void > & signal_selection_changed()
virtual sigc::signal< void > & signal_presetlist_changed()
virtual bool bank_remove(const Glib::ustring &bank)
virtual sigc::signal< void > & signal_midi_changed()
virtual void set_state(GxEngineState state)
virtual void disable_autosave(bool v)
virtual Plugin * pluginlist_lookup_plugin(const std::string &id) const
virtual bool setting_is_preset()
virtual void start_socket(sigc::slot< void > quit_mainloop, const Glib::ustring &host, int port)
virtual gx_system::PresetFileGui * bank_insert_uri(const Glib::ustring &uri, bool move, int position)
gx_system::PresetBanks banks
Definition machine.h:410
void throw_error(gx_system::JsonStringParser *jp)
virtual sigc::signal< void, GxEngineState > & signal_state_change()
virtual sigc::signal< void, const Glib::ustring &, const Glib::ustring & > & tuner_switcher_signal_display()
virtual bool read_audio(const std::string &filename, unsigned int *audio_size, int *audio_chan, int *audio_type, int *audio_form, int *audio_rate, float **buffer)
virtual void set_midi_feedback(int v)
Glib::ustring current_bank
Definition machine.h:429
virtual const Glib::ustring & get_current_name()
Glib::RefPtr< Gio::Socket > socket
Definition machine.h:414
virtual gx_system::PresetFileGui * get_current_bank_file()
virtual void pf_insert_after(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &pos, const Glib::ustring &name)
virtual bool midi_get_config_mode(int *ctl=0)
virtual gx_system::CmdlineOptions & get_options() const
const jsonrpc_method_def & start_call(jsonrpc_method m_id)
virtual void plugin_preset_list_sync_set(const PluginDef *pdef, bool factory, const Glib::ustring &name)
virtual void midi_deleteParameter(Parameter &param)
virtual void pf_save(gx_system::PresetFileGui &pf, const Glib::ustring &name)
virtual void load_preset(gx_system::PresetFileGui *pf, const Glib::ustring &name)
virtual void erase_preset(gx_system::PresetFileGui &pf, const Glib::ustring &name)
PluginListBase pluginlist
Definition machine.h:409
virtual void set_parameter_value(const std::string &id, int value)
virtual void midi_set_current_control(int v)
virtual bool get_midi_feedback()
void create_bluetooth_socket(const Glib::ustring &bdaddr)
gx_preset::UnitRacks rack_units
Definition machine.h:425
virtual void remove_rack_unit(const std::string &unit, PluginType type)
sigc::signal< void, const Glib::ustring &, const Glib::ustring & > tuner_switcher_display
Definition machine.h:433
virtual bool convert_preset(gx_system::PresetFileGui &pf)
virtual sigc::signal< void, TunerSwitcher::SwitcherState > & tuner_switcher_signal_set_state()
virtual void save_ladspalist(ladspa::LadspaPluginList &pluginlist)
virtual void tuner_switcher_toggle(bool v)
virtual int _get_parameter_value_int(const std::string &id)
void report_rpc_error(gx_system::JsonStringParser *jp, const gx_system::JsonException &e, const char *method=0)
virtual void bank_drag_begin()
virtual int get_bank_index(const Glib::ustring &bank)
virtual Parameter & get_parameter(const char *p)
virtual void set_parameter_value(const std::string &id, bool value)
virtual int midi_param2controller(Parameter &param, const MidiController **p)
virtual void save_to_state(bool preserve_preset=false)
void parameter_changed(gx_system::JsonStringParser *jp)
virtual GxEngineState get_state()
virtual sigc::signal< void, bool > & signal_rack_unit_order_changed()
virtual void disable_save_on_exit(bool v)
virtual bool rename_preset(gx_system::PresetFileGui &pf, const Glib::ustring &oldname, const Glib::ustring &newname)
boost::iostreams::file_descriptor_sink * writebuf
Definition machine.h:419
virtual float _get_parameter_value_float(const std::string &id)
virtual void set_init_values()
virtual bool parameter_unit_has_std_values(const PluginDef *pdef) const
virtual bool load_unit(gx_gui::UiBuilderImpl &builder, PluginDef *pdef)
sigc::signal< void, TunerSwitcher::SwitcherState > tuner_switcher_set_state
Definition machine.h:434
virtual Parameter & get_parameter(const std::string &id)
virtual bool parameter_hasId(const std::string &id)
virtual void on_tuner_freq_changed()
bool get_bool(gx_system::JsonStringParser *jp)
virtual std::string bank_get_filename(const Glib::ustring &bank)
virtual sigc::signal< void, Plugin *, PluginChange::pc > & signal_plugin_changed()
virtual void next_preset_switch()
void handle_notify(gx_system::JsonStringParser *jp)
virtual void midi_set_config_mode(bool v, int ctl=-1)
gx_system::JsonWriter * jw
Definition machine.h:422
bool socket_input_handler(Glib::IOCondition cond)
virtual void plugin_preset_list_remove(const PluginDef *pdef, const Glib::ustring &name)
virtual void bank_set_flag(gx_system::PresetFileGui *pf, int flag, bool v)
virtual int _get_parameter_value_bool(const std::string &id)
virtual const std::vector< std::string > & get_rack_unit_order(PluginType type)
sigc::signal< void, Plugin *, PluginChange::pc > plugin_changed
Definition machine.h:436
virtual void pluginlist_append_rack(UiBuilderBase &ui)
virtual sigc::signal< void, int > & _signal_parameter_value_int(const std::string &id)
ControllerArray midi_controller_map
Definition machine.h:428
void update_plugins(gx_system::JsonParser *jp)
void param_signal(Parameter *p)
virtual sigc::signal< void, bool > & tuner_switcher_signal_selection_done()
int load_remote_ui(const UiBuilder &builder, int form)
virtual void set_parameter_value(const std::string &id, const std::string &value)
virtual void plugin_preset_list_load(const PluginDef *pdef, gx_preset::UnitPresetList &presetnames)
virtual bool rename_bank(const Glib::ustring &oldname, Glib::ustring &newname)
boost::iostreams::stream< boost::iostreams::file_descriptor_sink > * os
Definition machine.h:420
GxMachineRemote(gx_system::CmdlineOptions &options)
virtual void reset_unit(const PluginDef *pdef) const
virtual void plugin_preset_list_set(const PluginDef *pdef, bool factory, const Glib::ustring &name)
virtual void process_previus_preset_switch(bool s)
virtual void pf_insert_before(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &pos, const Glib::ustring &name)
virtual float get_tuner_note()
virtual void tuner_switcher_activate(bool v)
virtual void tuner_switcher_deactivate()
virtual void stop_socket()
Glib::ustring current_preset
Definition machine.h:430
gx_system::JsonStringParser * receive()
std::vector< gx_system::JsonStringParser * > notify_list
Definition machine.h:423
virtual void tuner_used_by_midi(bool on)
virtual void set_jack_insert(bool v)
virtual bool get_tuner_switcher_active()
virtual float get_tuner_freq()
sigc::signal< void, GxEngineState > engine_state_change
Definition machine.h:411
virtual void midi_feedback(int c, int v)
virtual bank_iterator bank_end()
virtual void midi_modifyCurrent(Parameter &param, float lower, float upper, bool toggle, int toggle_behaviour)
virtual void set_oscilloscope_mul_buffer(int a)
virtual void reorder_preset(gx_system::PresetFileGui &pf, const std::vector< Glib::ustring > &neworder)
virtual std::string _get_parameter_value_string(const std::string &id)
virtual void plugin_preset_list_save(const PluginDef *pdef, const Glib::ustring &name)
virtual void load_impresp_dirs(std::vector< gx_system::FileName > &dirs)
sigc::signal< void > presetlist_changed
Definition machine.h:413
virtual bank_iterator bank_begin()
virtual int get_oscilloscope_mul_buffer()
sigc::signal< void > midi_changed
Definition machine.h:426
sigc::signal< void, bool > tuner_switcher_selection_done
Definition machine.h:435
virtual void insert_param(Glib::ustring group, Glib::ustring name)
virtual bool update_parameter()
virtual void request_midi_value_update()
virtual void process_next_preset_switch(bool s)
virtual void set_parameter_value(const std::string &id, float value)
virtual midi_controller_list & midi_get(int n)
virtual void plugin_preset_list_set_on_idle(const PluginDef *pdef, bool factory, const Glib::ustring &name)
virtual sigc::signal< void, float > & _signal_parameter_value_float(const std::string &id)
sigc::signal< void, int, int > midi_value_changed
Definition machine.h:427
virtual void reload_impresp_list(const std::string &path)
virtual void pf_append(gx_system::PresetFileGui &pf, const Glib::ustring &src, gx_system::PresetFileGui &pftgt, const Glib::ustring &name)
virtual gx_system::PresetFileGui * get_bank_file(const Glib::ustring &bank) const
std::string bank_drag_get_path
Definition machine.h:432
virtual void insert_rack_unit(const std::string &unit, const std::string &before, PluginType type)
virtual bool bank_check_reparse()
void midi_set_last_controller_value(int ctl, int v)
virtual const Glib::ustring & get_current_bank()
virtual bool msend_midi_cc(int cc, int pgn, int bgn, int num)
sigc::connection idle_conn
Definition machine.h:424
sigc::signal< void > selection_changed
Definition machine.h:412
virtual void start_ramp_up()
virtual void start_ramp_down()
virtual void wait_ramp_down_finished()
gx_system::PresetFileGui * operator->()
Definition machine.h:53
bank_iterator(gx_system::PresetBanks::iterator it_)
Definition machine.h:49
bool operator!=(const bank_iterator &i) const
Definition machine.h:51
gx_system::PresetFileGui * operator*()
Definition machine.h:54
gx_system::PresetBanks::iterator it
Definition machine.h:47
bank_iterator & operator++()
Definition machine.h:52
PresetFileGui * get_guiwrapper()
Definition gx_json.h:396
PluginType
Definition machine.h:38
@ PLUGIN_TYPE_MONO
Definition machine.h:39
@ PLUGIN_TYPE_STEREO
Definition machine.h:40
list< MidiController > midi_controller_list
map< string, set< void * > > output_listen_map
Definition machine.h:57
std::vector< PluginPresetEntry > UnitPresetList
Definition gx_preset.h:138