add a pure virtual FileSource::close() method so that FileSource::set_path() can...
[ardour.git] / libs / ardour / ardour / filter.h
index b659873bdb01927d5c7a16f694aef777075913e4..2b6476c49f0b2eafa6e6a1fe5f37dd4f3c7b2df2 100644 (file)
@@ -1,6 +1,6 @@
 /*
-    Copyright (C) 2007 Paul Davis 
-    Author: Dave Robillard
+    Copyright (C) 2007 Paul Davis
+    Author: David Robillard
 
     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
 #define __ardour_filter_h__
 
 #include <vector>
-#include <ardour/region.h>
+
+#include "ardour/libardour_visibility.h"
+#include "ardour/types.h"
 
 namespace ARDOUR {
 
 class Region;
 class Session;
+class Progress;
 
-class Filter {
+class LIBARDOUR_API Filter {
 
   public:
        virtual ~Filter() {}
 
-       virtual int run (boost::shared_ptr<ARDOUR::Region>) = 0;
+       virtual int run (boost::shared_ptr<ARDOUR::Region>, Progress* progress = 0) = 0;
        std::vector<boost::shared_ptr<ARDOUR::Region> > results;
 
   protected:
@@ -42,7 +45,7 @@ class Filter {
 
        int make_new_sources (boost::shared_ptr<ARDOUR::Region>, ARDOUR::SourceList&, std::string suffix = "");
        int finish (boost::shared_ptr<ARDOUR::Region>, ARDOUR::SourceList&, std::string region_name = "");
-       
+
        ARDOUR::Session& session;
 };