ardour
location_importer.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2008 Paul Davis
3  Author: Sakari Bergen
4 
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.
9 
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.
14 
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.
18 
19 */
20 
21 #ifndef __ardour_location_importer_h__
22 #define __ardour_location_importer_h__
23 
26 
27 #include <boost/shared_ptr.hpp>
28 
29 #include "pbd/xml++.h"
30 
31 namespace ARDOUR {
32 
33 class Location;
34 class Session;
35 
37 {
38  public:
39  LocationImportHandler (XMLTree const & source, Session & session);
40  std::string get_info () const;
41 };
42 
44 {
45  public:
46  LocationImporter (XMLTree const & source, Session & session, LocationImportHandler & handler, XMLNode const & node);
47  ~LocationImporter ();
48 
49  std::string get_info () const;
50 
51  protected:
52  bool _prepare_move ();
53  void _cancel_move ();
54  void _move ();
55 
56  private:
60 
61  void parse_xml ();
62 };
63 
64 } // namespace ARDOUR
65 
66 #endif
LocationImportHandler & handler
Definition: xml++.h:55
Virtual interface class for element importers.
Definition: amp.h:29
#define LIBARDOUR_API
Virtual interface class for element import handlers.
Definition: xml++.h:95