Merge branch 'cairocanvas'
[ardour.git] / libs / ardour / ardour / io_processor.h
index 4385b1c04186976dec20bb2c14ae19e670b746c3..a2735453a76db1154a6f4dc74c2df54a5a0f0adf 100644 (file)
@@ -23,7 +23,7 @@
 #include <string>
 #include <boost/shared_ptr.hpp>
 
-#include <glibmm/thread.h>
+#include <glibmm/threads.h>
 
 #include "pbd/undo.h"
 
@@ -40,18 +40,20 @@ class Route;
 
 /** A mixer strip element (Processor) with 1 or 2 IO elements.
  */
-class IOProcessor : public Processor
+class LIBARDOUR_API IOProcessor : public Processor
 {
   public:
        IOProcessor (Session&, bool with_input, bool with_output,
-                         const std::string& proc_name, const std::string io_name="",
-                         ARDOUR::DataType default_type = DataType::AUDIO);
-       IOProcessor (Session&, boost::shared_ptr<IO> input, boost::shared_ptr<IO> output,
-                       const std::string& proc_name, ARDOUR::DataType default_type = DataType::AUDIO);
+                    const std::string& proc_name, const std::string io_name="",
+                    ARDOUR::DataType default_type = DataType::AUDIO, bool sendish=false);
+        IOProcessor (Session&, boost::shared_ptr<IO> input, boost::shared_ptr<IO> output,
+                    const std::string& proc_name, ARDOUR::DataType default_type = DataType::AUDIO);
        virtual ~IOProcessor ();
 
        bool set_name (const std::string& str);
 
+       bool does_routing() const { return true; }
+
        virtual ChanCount natural_output_streams() const;
        virtual ChanCount natural_input_streams () const;