Remove unused declaration.
[ardour.git] / libs / ardour / ardour / jack_port.h
index c8add2c27083cc60725ec5d4f149836e1eacdbfb..edbabaae046efc2ca72c7ef00a2a7fb157c1d9e1 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2002 Paul Davis 
+    Copyright (C) 2002 Paul Davis
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -20,9 +20,8 @@
 #ifndef __ardour_jack_port_h__
 #define __ardour_jack_port_h__
 
-#include <sigc++/signal.h>
-#include <pbd/failed_constructor.h>
-#include <ardour/port.h>
+#include "pbd/failed_constructor.h"
+#include "ardour/port.h"
 #include <jack/jack.h>
 
 namespace ARDOUR {
@@ -32,45 +31,54 @@ class Buffer;
 
 /** Abstract class representing JACK ports
  */
-class JackPort : public virtual Port {
+class JackPort : public virtual Port, public PortConnectableByName {
    public:
 
        ~JackPort();
 
-       std::string short_name() 
+       std::string short_name() const {
                return jack_port_short_name (_port);
        }
-       
-       int set_name (std::string str);
 
-       bool is_mine () const;
+       int set_name (const std::string& str);
 
-       int connected () const {
+       bool connected () const {
                return jack_port_connected (_port);
        }
-       
+
        int reestablish ();
-       
+       int reconnect ();
+
+       int connect (Port& other) {
+               if (_flags & IsOutput) {
+                       return 0;
+               }
+               return connect (other.name());
+       }
+
+       int disconnect (Port& other) {
+               return disconnect (other.name());
+       }
+
+       int disconnect_all ();
+
+       // connect-by-name API
+
+       int connect (const std::string& other_name);
+       int disconnect (const std::string& other_name);
+
        bool connected_to (const std::string& portname) const {
                return jack_port_connected_to (_port, portname.c_str());
        }
 
-       const char ** get_connections () const {
-               return jack_port_get_connections (_port);
-       }
-       
+       int get_connections (std::vector<std::string>& names) const;
+
        bool monitoring_input () const {
                return jack_port_monitoring_input (_port);
        }
 
        void ensure_monitor_input (bool yn) {
-
-#ifdef HAVE_JACK_PORT_ENSURE_MONITOR
                jack_port_ensure_monitor (_port, yn);
-#else
-               jack_port_request_monitor(_port, yn);
-#endif
-
        }
 
        /*XXX completely bloody useless imho*/
@@ -95,13 +103,11 @@ class JackPort : public virtual Port {
        JackPort (const std::string&, DataType type, Flags flags);
        jack_port_t*  _port;
 
-       int disconnect ();
-       void recompute_total_latency() const;
+       int disconnect ();
 
-       static void set_engine (AudioEngine*);
-       static AudioEngine* engine;
+       std::set<std::string> _named_connections;
 };
+
 } // namespace ARDOUR
 
 #endif /* __ardour_jack_port_h__ */