MCP: reverse operation of cursor up/down in zoom mode; more tracign for vpot
[ardour.git] / libs / surfaces / generic_midi / midifunction.h
index 73ba21434e95980e59f8ccf98bf45d17f611f48a..8b3a52df3c47c961ac93c80540ef443ac5b2d966 100644 (file)
@@ -52,13 +52,21 @@ class MIDIFunction : public MIDIInvokable
                TransportEnd,
                TransportLoopToggle,
                TransportRecordEnable,
-               TransportRecordDisable
+               TransportRecordDisable,
+               /* 1 argument functions: RID */
+               Select,
+               /* 2 argument functions: RID, value */
+               TrackSetSolo, 
+               TrackSetMute,
+               TrackSetGain,
+               TrackSetRecordEnable,
+               TrackSetSoloIsolate,
        };
 
        MIDIFunction (MIDI::Port&);
        virtual ~MIDIFunction ();
 
-       int init (GenericMidiControlProtocol&, const std::string& function_name, MIDI::byte* sysex = 0, size_t ssize = 0);
+       int setup (GenericMidiControlProtocol&, const std::string& function_name, const std::string& argument, MIDI::byte* sysex = 0, size_t ssize = 0);
 
        const std::string& function_name() const { return _invokable_name; }
 
@@ -67,6 +75,7 @@ class MIDIFunction : public MIDIInvokable
 
   private:
        Function        _function;
+       std::string     _argument;
        void execute ();
 };