2
Copyright (C) 2008 Paul Davis
5
This program is free software; you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation; either version 2 of the License, or
8
(at your option) any later version.
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
15
You should have received a copy of the GNU General Public License
16
along with this program; if not, write to the Free Software
17
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21
#ifndef __ardour_audio_track_importer_h__
22
#define __ardour_audio_track_importer_h__
26
#include "pbd/xml++.h"
29
#include "ardour/element_importer.h"
30
#include "ardour/element_import_handler.h"
34
class AudioPlaylistImportHandler;
35
class AudioPlaylistImporter;
37
class AudioTrackImportHandler : public ElementImportHandler
40
AudioTrackImportHandler (XMLTree const & source, Session & session, AudioPlaylistImportHandler & pl_handler);
41
virtual ~AudioTrackImportHandler () {}
42
virtual std::string get_info () const;
45
AudioPlaylistImportHandler & pl_handler;
49
class AudioTrackImporter : public ElementImporter
52
AudioTrackImporter (XMLTree const & source,
54
AudioTrackImportHandler & track_handler,
56
AudioPlaylistImportHandler & pl_handler);
57
~AudioTrackImporter ();
59
std::string get_info () const;
62
bool _prepare_move ();
68
typedef boost::shared_ptr<AudioPlaylistImporter> PlaylistPtr;
69
typedef std::list<PlaylistPtr> PlaylistList;
71
bool parse_route_xml ();
74
bool parse_processor (XMLNode & node);
75
bool parse_controllable (XMLNode & node);
76
bool parse_automation (XMLNode & node);
77
bool rate_convert_events (XMLNode & node);
79
AudioTrackImportHandler & track_handler;
85
PlaylistList playlists;
86
AudioPlaylistImportHandler & pl_handler;