diff options
author | Sakari Bergen <sakari.bergen@beatwaves.net> | 2008-11-26 17:13:50 +0000 |
---|---|---|
committer | Sakari Bergen <sakari.bergen@beatwaves.net> | 2008-11-26 17:13:50 +0000 |
commit | 38382b792113cbf23881c1dca64e16c2d0207d45 (patch) | |
tree | 5fb1185a6f21ecc769a4c229fc0f6b7415eabaf5 /libs/ardour/ardour/audio_track_importer.h | |
parent | 95a86871c028ab7f0ae16608adb9b86495678d50 (diff) |
More work on track import and some cleaning up of ElementImporter interface
git-svn-id: svn://localhost/ardour2/branches/3.0@4265 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/audio_track_importer.h')
-rw-r--r-- | libs/ardour/ardour/audio_track_importer.h | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/libs/ardour/ardour/audio_track_importer.h b/libs/ardour/ardour/audio_track_importer.h index 172776863e..6beee4a408 100644 --- a/libs/ardour/ardour/audio_track_importer.h +++ b/libs/ardour/ardour/audio_track_importer.h @@ -21,44 +21,68 @@ #ifndef __ardour_audio_track_importer_h__ #define __ardour_audio_track_importer_h__ +#include <list> + #include <pbd/xml++.h> +#include <pbd/id.h> #include <ardour/element_importer.h> #include <ardour/element_import_handler.h> namespace ARDOUR { +class AudioPlaylistImportHandler; +class AudioPlaylistImporter; class AudioTrackImportHandler : public ElementImportHandler { public: - AudioTrackImportHandler (XMLTree const & source, Session & session); + AudioTrackImportHandler (XMLTree const & source, Session & session, AudioPlaylistImportHandler & pl_handler); virtual ~AudioTrackImportHandler () {} virtual string get_info () const; + + private: + AudioPlaylistImportHandler & pl_handler; }; class AudioTrackImporter : public ElementImporter { public: - AudioTrackImporter (XMLTree const & source, Session & session, AudioTrackImportHandler & handler, XMLNode const & node); + AudioTrackImporter (XMLTree const & source, + Session & session, + AudioTrackImportHandler & track_handler, + XMLNode const & node, + AudioPlaylistImportHandler & pl_handler); string get_info () const; - bool prepare_move (); - void cancel_move (); - void move (); + + protected: + bool _prepare_move (); + void _cancel_move (); + void _move (); private: + typedef boost::shared_ptr<AudioPlaylistImporter> PlaylistPtr; + typedef std::list<PlaylistPtr> PlaylistList; + bool parse_route_xml (); bool parse_io (); bool parse_processor (XMLNode & node); bool parse_controllable (XMLNode & node); bool parse_automation (XMLNode & node); + bool rate_convert_events (XMLNode & node); + AudioTrackImportHandler & track_handler; XMLNode xml_track; + PBD::ID old_ds_id; + PBD::ID new_ds_id; + + PlaylistList playlists; + AudioPlaylistImportHandler & pl_handler; }; } // namespace ARDOUR |