allow to query export profile type
[ardour.git] / libs / ardour / ardour / audio_region_importer.h
index ec70627428872db72cae37f6bfe49eae1783c18c..d1a965a5eebdbd28eb5c91a6291936a6df52793e 100644 (file)
 
 #include "pbd/xml++.h"
 #include "pbd/id.h"
-#include "pbd/filesystem.h"
-#include "ardour/types.h"
 #include "ardour/element_importer.h"
 #include "ardour/element_import_handler.h"
+#include "ardour/import_status.h"
 
 namespace ARDOUR {
 
 class Region;
+class Session;
+class Source;
 
-class AudioRegionImportHandler : public ElementImportHandler
+class LIBARDOUR_API AudioRegionImportHandler : public ElementImportHandler
 {
   public:
        // Inerface implementation
        AudioRegionImportHandler (XMLTree const & source, Session & session);
-       string get_info () const;
-       
+       std::string get_info () const;
+
        void create_regions_from_children (XMLNode const & node, ElementList & list);
-       
+
        // Source management
-       bool check_source (string const & filename) const;
-       void add_source (string const & filename, boost::shared_ptr<Source> const & source);
-       boost::shared_ptr<Source> const & get_source (string const & filename) const;
+       bool check_source (std::string const & filename) const;
+       void add_source (std::string const & filename, boost::shared_ptr<Source> const & source);
+       boost::shared_ptr<Source> const & get_source (std::string const & filename) const;
 
        // Id management
        void register_id (PBD::ID & old_id, PBD::ID & new_id);
@@ -58,8 +59,8 @@ class AudioRegionImportHandler : public ElementImportHandler
 
   private:
        // Source management
-       typedef std::map<string, boost::shared_ptr<Source> > SourceMap;
-       typedef std::pair<string, boost::shared_ptr<Source> > SourcePair;
+       typedef std::map<std::string, boost::shared_ptr<Source> > SourceMap;
+       typedef std::pair<std::string, boost::shared_ptr<Source> > SourcePair;
        SourceMap sources;
 
        // Id management
@@ -68,16 +69,16 @@ class AudioRegionImportHandler : public ElementImportHandler
        IdMap id_map;
 };
 
-class AudioRegionImporter : public ElementImporter
+class LIBARDOUR_API AudioRegionImporter : public ElementImporter
 {
   public:
        AudioRegionImporter (XMLTree const & source, Session & session, AudioRegionImportHandler & handler, XMLNode const & node);
        ~AudioRegionImporter ();
 
        // Interface implementation
-       string get_info () const;
-       Session::ImportStatus * get_import_status () { return &status; }
-       
+       std::string get_info () const;
+       ImportStatus * get_import_status () { return &status; }
+
        // other stuff
        void add_sources_to_session ();
        XMLNode const & get_xml ();
@@ -93,13 +94,13 @@ class AudioRegionImporter : public ElementImporter
        AudioRegionImportHandler & handler;
        PBD::ID old_id;
        PBD::ID id;
-       std::list<string> filenames;
-       Session::ImportStatus status;
-       
+       std::list<std::string> filenames;
+       ImportStatus status;
+
        bool parse_xml_region ();
        bool parse_source_xml ();
-       PBD::sys::path get_sound_dir (XMLTree const & tree);
-       
+       std::string get_sound_dir (XMLTree const & tree);
+
        void prepare_region ();
        void prepare_sources ();
        std::vector<boost::shared_ptr<Region> > region;