diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-11-25 14:37:20 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-11-25 14:37:20 +0000 |
commit | 926f53244df3d0f43f647f93ee091378ebe101d6 (patch) | |
tree | 4849d5a55869ea3242af40eadd39a053c89c2543 /libs/ardour/source_factory.cc | |
parent | f41f07832338a52d7c6ac8f6e7bbe4971f6c0bd3 (diff) |
carl's wondrous DnD VBox patch - processor boxes are now vboxes and not listviews - which included a couple of minor marker/time axis view patches for opaqueness etc.
git-svn-id: svn://localhost/ardour2/branches/3.0@6174 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/source_factory.cc')
-rw-r--r-- | libs/ardour/source_factory.cc | 43 |
1 files changed, 31 insertions, 12 deletions
diff --git a/libs/ardour/source_factory.cc b/libs/ardour/source_factory.cc index 198a429c5d..999ae667dd 100644 --- a/libs/ardour/source_factory.cc +++ b/libs/ardour/source_factory.cc @@ -22,6 +22,7 @@ #include "libardour-config.h" #endif +#include "pbd/boost_debug.h" #include "pbd/error.h" #include "pbd/convert.h" #include "pbd/pthread_utils.h" @@ -122,7 +123,9 @@ SourceFactory::setup_peakfile (boost::shared_ptr<Source> s, bool async) boost::shared_ptr<Source> SourceFactory::createSilent (Session& s, const XMLNode& node, nframes_t nframes, float sr) { - boost::shared_ptr<Source> ret (new SilentFileSource (s, node, nframes, sr)); + Source* src = new SilentFileSource (s, node, nframes, sr); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); // no analysis data - the file is non-existent SourceCreated (ret); return ret; @@ -142,7 +145,9 @@ SourceFactory::create (Session& s, const XMLNode& node, bool defer_peaks) try { - boost::shared_ptr<Source> ret (new SndFileSource (s, node)); + Source* src = new SndFileSource (s, node); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); if (setup_peakfile (ret, defer_peaks)) { return boost::shared_ptr<Source>(); } @@ -157,7 +162,9 @@ SourceFactory::create (Session& s, const XMLNode& node, bool defer_peaks) /* this is allowed to throw */ - boost::shared_ptr<Source> ret (new CoreAudioSource (s, node)); + Source *s = new CoreAudioSource (s, node); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); if (setup_peakfile (ret, defer_peaks)) { return boost::shared_ptr<Source>(); @@ -172,7 +179,9 @@ SourceFactory::create (Session& s, const XMLNode& node, bool defer_peaks) } } else if (type == DataType::MIDI) { - boost::shared_ptr<Source> ret (new SMFSource (s, node)); + Source* src = new SMFSource (s, node); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); ret->check_for_analysis_data_on_disk (); SourceCreated (ret); return ret; @@ -191,8 +200,10 @@ SourceFactory::createReadable (DataType type, Session& s, const string& path, bo try { - boost::shared_ptr<Source> ret (new SndFileSource (s, path, embedded, chn, flags)); - + Source* src = new SndFileSource (s, path, embedded, chn, flags); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); + if (setup_peakfile (ret, defer_peaks)) { return boost::shared_ptr<Source>(); } @@ -207,7 +218,9 @@ SourceFactory::createReadable (DataType type, Session& s, const string& path, bo catch (failed_constructor& err) { #ifdef USE_COREAUDIO_FOR_FILES - boost::shared_ptr<Source> ret (new CoreAudioSource (s, path, embedded, chn, flags)); + Source* src = new CoreAudioSource (s, path, embedded, chn, flags); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); if (setup_peakfile (ret, defer_peaks)) { return boost::shared_ptr<Source>(); } @@ -227,8 +240,10 @@ SourceFactory::createReadable (DataType type, Session& s, const string& path, bo } } else if (type == DataType::MIDI) { - - boost::shared_ptr<Source> ret (new SMFSource (s, path, embedded, SMFSource::Flag(0))); + + Source* src = new SMFSource (s, path, embedded, SMFSource::Flag(0)); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); if (announce) { SourceCreated (ret); @@ -248,13 +263,15 @@ SourceFactory::createWritable (DataType type, Session& s, const std::string& pat /* this might throw failed_constructor(), which is OK */ if (type == DataType::AUDIO) { - boost::shared_ptr<Source> ret (new SndFileSource (s, path, embedded, + Source* src = new SndFileSource (s, path, embedded, s.config.get_native_file_data_format(), s.config.get_native_file_header_format(), rate, (destructive ? Source::Flag (SndFileSource::default_writable_flags | Source::Destructive) - : SndFileSource::default_writable_flags))); + : SndFileSource::default_writable_flags)); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); if (setup_peakfile (ret, defer_peaks)) { return boost::shared_ptr<Source>(); @@ -269,7 +286,9 @@ SourceFactory::createWritable (DataType type, Session& s, const std::string& pat } else if (type == DataType::MIDI) { - boost::shared_ptr<Source> ret (new SMFSource (s, path, embedded, Source::Flag(0))); + Source* src = new SMFSource (s, path, embedded, Source::Flag(0)); + // boost_debug_shared_ptr_mark_interesting (src, typeid(src).name()); + boost::shared_ptr<Source> ret (src); // no analysis data - this is a new file |