3 #include "launch_control_xl.h"
4 #include "pbd/compose.h"
5 #include "pbd/convert.h"
7 #include "pbd/failed_constructor.h"
8 #include "pbd/file_utils.h"
9 #include "pbd/search_path.h"
10 #include "pbd/enumwriter.h"
12 #include "midi++/parser.h"
14 #include "temporal/time.h"
15 #include "temporal/bbt_time.h"
17 #include "ardour/amp.h"
18 #include "ardour/async_midi_port.h"
19 #include "ardour/audioengine.h"
20 #include "ardour/debug.h"
21 #include "ardour/midiport_manager.h"
22 #include "ardour/midi_track.h"
23 #include "ardour/midi_port.h"
24 #include "ardour/session.h"
25 #include "ardour/tempo.h"
26 #include "ardour/types_convert.h"
27 #include "ardour/vca_manager.h"
33 using namespace ArdourSurface;
34 using namespace ARDOUR;
39 LaunchControlXL::SelectButton::state_msg(bool light) const {
40 uint8_t velocity = ( color() + flag() ) * light;
41 return MidiByteArray (11, 0xF0, 0x00, 0x20, 0x29, 0x02, 0x11, 0x78, lcxl->template_number(), index(), velocity, 0xF7);
45 LaunchControlXL::TrackButton::state_msg(bool light) const {
46 uint8_t velocity = ( color() + flag() ) * light;
47 return MidiByteArray (11, 0xF0, 0x00, 0x20, 0x29, 0x02, 0x11, 0x78, lcxl->template_number(), index(), velocity, 0xF7);
52 LaunchControlXL::TrackStateButton::state_msg(bool light) const {
53 uint8_t velocity = ( color() + flag() ) * light;
54 return MidiByteArray (11, 0xF0, 0x00, 0x20, 0x29, 0x02, 0x11, 0x78, lcxl->template_number(), index(), velocity, 0xF7);
59 LaunchControlXL::Knob::state_msg(bool light) const {
60 uint8_t velocity = ( color() + flag() ) * light;
61 return MidiByteArray (11, 0xF0, 0x00, 0x20, 0x29, 0x02, 0x11, 0x78, lcxl->template_number(), index(), velocity, 0xF7);