breakout control protocol code into LGPL library; fix panner buttons even more than...
[ardour.git] / libs / surfaces / tranzport / tranzport_control_protocol.h
index b24a94577a1f1578a170341c47da92b24b4ad115..0311140f8c20c77c54fe82246d84758833e5f44f 100644 (file)
@@ -7,24 +7,12 @@
 #include <pbd/lockmonitor.h>
 #include <pthread.h>
 #include <usb.h>
-#include <ardour/control_protocol.h>
-#include <ardour/types.h>
 
-#include <pbd/abstract_ui.h>
+#include <ardour/types.h>
 
-extern BaseUI::RequestType LEDChange;
-extern BaseUI::RequestType Print;
-extern BaseUI::RequestType SetCurrentTrack;
+#include "control_protocol.h"
 
-struct TranzportRequest : public BaseUI::BaseRequestObject {
-    int led;
-    int row;
-    int col;
-    char* text;
-    ARDOUR::Route* track;
-};
-
-class TranzportControlProtocol : public ARDOUR::ControlProtocol, public AbstractUI<TranzportRequest> 
+class TranzportControlProtocol : public ARDOUR::ControlProtocol
 {
   public:
        TranzportControlProtocol (ARDOUR::Session&);
@@ -32,7 +20,7 @@ class TranzportControlProtocol : public ARDOUR::ControlProtocol, public Abstract
 
        int set_active (bool yn);
 
-       bool caller_is_ui_thread();
+       static bool probe ();
 
   private:
        static const int VENDORID = 0x165b;
@@ -107,8 +95,6 @@ class TranzportControlProtocol : public ARDOUR::ControlProtocol, public Abstract
        DisplayMode     display_mode;
        ARDOUR::gain_t  gain_fraction;
 
-       void do_request (TranzportRequest*);
-       
        PBD::Lock update_lock;
        char current_screen[2][20];
        char pending_screen[2][20];