diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-03-15 19:42:42 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-03-15 19:42:42 +0000 |
commit | 702411f6582073e198fb8c6ae6b0ba43b00a5840 (patch) | |
tree | fa975802e3e0e5d776f2a06779d1831c16be49d5 /libs/ardour/session.cc | |
parent | 6fadaae2cbc6ed0bc83136cde7536623894f819d (diff) |
edit groups tab gets headers (carl); use sampo's SSE find_peaks code; fix build for find_peaks on x86; don't duplicate sources when embedding; use Glib::ustring for all source-related strings; fixup plugin UI automation buttons
git-svn-id: svn://localhost/ardour2/trunk@1595 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session.cc')
-rw-r--r-- | libs/ardour/session.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index 7b609e62cb..257126b6f1 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -2839,6 +2839,24 @@ Session::source_by_id (const PBD::ID& id) return source; } + +boost::shared_ptr<Source> +Session::source_by_path_and_channel (const Glib::ustring& path, uint16_t chn) +{ + Glib::Mutex::Lock lm (audio_source_lock); + + for (AudioSourceList::iterator i = audio_sources.begin(); i != audio_sources.end(); ++i) { + cerr << "comparing " << path << " with " << i->second->name() << endl; + boost::shared_ptr<AudioFileSource> afs = boost::dynamic_pointer_cast<AudioFileSource>(i->second); + + if (afs && afs->path() == path && chn == afs->channel()) { + return afs; + } + + } + return boost::shared_ptr<Source>(); +} + string Session::peak_path_from_audio_path (string audio_path) const { |