diff options
author | Doug McLain <doug@nostar.net> | 2008-06-02 05:02:28 +0000 |
---|---|---|
committer | Doug McLain <doug@nostar.net> | 2008-06-02 05:02:28 +0000 |
commit | 9c0d7d72d70082a54f823cd44c0ccda5da64bb6f (patch) | |
tree | 96ec400b83b8c1c06852b1936f684b5fbcd47a79 /libs/ardour/filter.cc | |
parent | 2f3f697bb8e185eb43c2c50b4eefc2bcb937f269 (diff) |
remove empty sigc++2 directory
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/filter.cc')
-rw-r--r-- | libs/ardour/filter.cc | 123 |
1 files changed, 0 insertions, 123 deletions
diff --git a/libs/ardour/filter.cc b/libs/ardour/filter.cc deleted file mode 100644 index be382f72da..0000000000 --- a/libs/ardour/filter.cc +++ /dev/null @@ -1,123 +0,0 @@ -/* - Copyright (C) 2004-2007 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 - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -*/ - -#include <time.h> -#include <cerrno> - -#include <pbd/basename.h> -#include <ardour/sndfilesource.h> -#include <ardour/smf_source.h> -#include <ardour/session.h> -#include <ardour/region.h> -#include <ardour/filter.h> -#include <ardour/region_factory.h> -#include <ardour/source_factory.h> -#include <ardour/analyser.h> - -#include "i18n.h" - -using namespace ARDOUR; -using namespace PBD; - -int -Filter::make_new_sources (boost::shared_ptr<Region> region, SourceList& nsrcs, string suffix) -{ - vector<string> names = region->master_source_names(); - - for (uint32_t i = 0; i < region->n_channels(); ++i) { - - string name = PBD::basename_nosuffix (names[i]); - - /* remove any existing version of suffix by assuming it starts - with some kind of "special" character. - */ - - if (!suffix.empty()) { - string::size_type pos = name.find (suffix[0]); - if (pos != string::npos && pos > 2) { - name = name.substr (0, pos - 1); - } - } - - string path = session.path_from_region_name (region->data_type(), - PBD::basename_nosuffix (names[i]), string ("")); - - if (path.length() == 0) { - error << string_compose (_("filter: error creating name for new file based on %1"), region->name()) - << endmsg; - return -1; - } - - try { - nsrcs.push_back (boost::dynamic_pointer_cast<Source> ( - SourceFactory::createWritable (region->data_type(), session, path, false, session.frame_rate()))); - } - - catch (failed_constructor& err) { - error << string_compose (_("filter: error creating new file %1 (%2)"), path, strerror (errno)) << endmsg; - return -1; - } - } - - return 0; -} - -int -Filter::finish (boost::shared_ptr<Region> region, SourceList& nsrcs, string region_name) -{ - /* update headers on new sources */ - - time_t xnow; - struct tm* now; - - time (&xnow); - now = localtime (&xnow); - - /* this is ugly. */ - for (SourceList::iterator si = nsrcs.begin(); si != nsrcs.end(); ++si) { - boost::shared_ptr<AudioFileSource> afs = boost::dynamic_pointer_cast<AudioFileSource>(*si); - if (afs) { - afs->update_header (region->position(), *now, xnow); - afs->mark_immutable (); - } - - boost::shared_ptr<SMFSource> smfs = boost::dynamic_pointer_cast<SMFSource>(*si); - if (smfs) { - smfs->set_timeline_position (region->position()); - smfs->flush_footer (); - } - - /* now that there is data there, requeue the file for analysis */ - - Analyser::queue_source_for_analysis (*si, false); - } - - /* create a new region */ - - if (region_name.empty()) { - region_name = session.new_region_name (region->name()); - } - results.clear (); - results.push_back (RegionFactory::create (nsrcs, 0, region->length(), region_name, 0, - Region::Flag (Region::WholeFile|Region::DefaultFlags))); - - return 0; -} - - |