/*
- 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:
Filter (ARDOUR::Session& s) : session(s) {}
- int make_new_sources (boost::shared_ptr<ARDOUR::Region>, ARDOUR::SourceList&, std::string suffix = "");
+ int make_new_sources (boost::shared_ptr<ARDOUR::Region>, ARDOUR::SourceList&, std::string suffix = "", bool use_session_sample_rate = true);
int finish (boost::shared_ptr<ARDOUR::Region>, ARDOUR::SourceList&, std::string region_name = "");
-
+
ARDOUR::Session& session;
};