summaryrefslogtreecommitdiff
path: root/libs/surfaces/generic_midi/generic_midi_control_protocol.h
blob: 75b514f0167cb97bb0c57432b53de401fdb96437 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef ardour_generic_midi_control_protocol_h
#define ardour_generic_midi_control_protocol_h

#include <ardour/control_protocol.h>

namespace MIDI {
	class Port;
}

namespace ARDOUR {

class GenericMidiControlProtocol : public ControlProtocol {
  public:
	GenericMidiControlProtocol (Session&);
	virtual ~GenericMidiControlProtocol();

	bool active() const;

	void set_port (MIDI::Port*);
	MIDI::Port* port () const { return _port; }

	void send_route_feedback (std::list<Route*>&);
	
  private:
	void route_feedback (ARDOUR::Route&, bool);
	MIDI::Port* _port;
};

}

#endif // ardour_generic_midi_control_protocol_h