#define __ardour_mackie_control_protocol_led_h__
#include "controls.h"
+#include "midi_byte_array.h"
+#include "types.h"
+
+namespace ArdourSurface {
namespace Mackie {
class Led : public Control
{
public:
+ static const int FaderTouch;
+ static const int Timecode;
+ static const int Beats;
+ static const int RudeSolo;
+ static const int RelayClick;
+
Led (int id, std::string name, Group & group)
: Control (id, name, group)
+ , state (off)
{
}
-
- virtual const Led & led() const { return *this; }
- virtual type_t type() const { return type_led; }
+ Led & led() { return *this; }
+ MidiByteArray set_state (LedState);
+
+ MidiByteArray zero() { return set_state (off); }
static Control* factory (Surface&, int id, const char*, Group&);
+
+ private:
+ LedState state;
};
+}
}
#endif /* __ardour_mackie_control_protocol_led_h__ */