projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
provide an RC configuration variable to "shadow" Evoral::ControlList::thinning_factor
[ardour.git]
/
libs
/
ardour
/
ardour
/
midi_ui.h
diff --git
a/libs/ardour/ardour/midi_ui.h
b/libs/ardour/ardour/midi_ui.h
index e1f322ddd105fe1cf491d19c9c9ed08460c673eb..51e3ca254458392fefd485b26c736ef64c56fa64 100644
(file)
--- a/
libs/ardour/ardour/midi_ui.h
+++ b/
libs/ardour/ardour/midi_ui.h
@@
-2,10
+2,12
@@
#define __libardour_midi_ui_h__
#include <list>
#define __libardour_midi_ui_h__
#include <list>
+
#include "pbd/abstract_ui.h"
#include "pbd/abstract_ui.h"
+#include "pbd/signals.h"
-namespace MIDI {
- class
p
ort;
+namespace MIDI {
+ class
P
ort;
}
namespace ARDOUR {
}
namespace ARDOUR {
@@
-28,23
+30,28
@@
class MidiControlUI : public AbstractUI<MidiUIRequest>
public:
MidiControlUI (Session& s);
~MidiControlUI ();
public:
MidiControlUI (Session& s);
~MidiControlUI ();
-
+
+ static MidiControlUI* instance() { return _instance; }
+
static BaseUI::RequestType PortChange;
static BaseUI::RequestType PortChange;
-
+
void change_midi_ports ();
void change_midi_ports ();
-
+
protected:
void thread_init ();
void do_request (MidiUIRequest*);
protected:
void thread_init ();
void do_request (MidiUIRequest*);
-
+
private:
private:
- typedef std::list<G
lib::RefPtr<Glib::IOSource>
> PortSources;
+ typedef std::list<G
Source*
> PortSources;
PortSources port_sources;
ARDOUR::Session& _session;
PortSources port_sources;
ARDOUR::Session& _session;
-
+ PBD::ScopedConnection rebind_connection;
+
bool midi_input_handler (Glib::IOCondition, MIDI::Port*);
void reset_ports ();
void clear_ports ();
bool midi_input_handler (Glib::IOCondition, MIDI::Port*);
void reset_ports ();
void clear_ports ();
+
+ static MidiControlUI* _instance;
};
}
};
}