Remove ifstream / ofstream when accessing session template files (or creating a new...
[ardour.git] / libs / ardour / ardour / export_handler.h
index e2c0a7b2b7548488440a7e640cba10df7ec6c13c..526d32b4c6614b36aab7ee016292e43b88bdb3f2 100644 (file)
@@ -29,6 +29,7 @@
 
 #include "ardour/export_pointers.h"
 #include "ardour/session.h"
+#include "ardour/libardour_visibility.h"
 #include "ardour/types.h"
 #include "pbd/signals.h"
 
@@ -46,7 +47,7 @@ class ExportFilename;
 class ExportGraphBuilder;
 class Location;
 
-class ExportElementFactory
+class LIBARDOUR_API ExportElementFactory
 {
   public:
 
@@ -68,7 +69,7 @@ class ExportElementFactory
        Session & session;
 };
 
-class ExportHandler : public ExportElementFactory, public sigc::trackable
+class LIBARDOUR_API ExportHandler : public ExportElementFactory, public sigc::trackable
 {
   public:
        struct FileSpec {
@@ -113,10 +114,11 @@ class ExportHandler : public ExportElementFactory, public sigc::trackable
        PBD::Signal3<void, double, double, std::string> SoundcloudProgress;
 
        /* upload credentials & preferences */
-       std::string upload_username;
-       std::string upload_password;
-       bool upload_public;
-       bool upload_open;
+       std::string soundcloud_username;
+       std::string soundcloud_password;
+       bool soundcloud_make_public;
+       bool soundcloud_open_page;
+       bool soundcloud_downloadable;
 
   private:
 
@@ -183,14 +185,19 @@ class ExportHandler : public ExportElementFactory, public sigc::trackable
 
        void write_cue_header (CDMarkerStatus & status);
        void write_toc_header (CDMarkerStatus & status);
+       void write_mp4ch_header (CDMarkerStatus & status);
 
        void write_track_info_cue (CDMarkerStatus & status);
        void write_track_info_toc (CDMarkerStatus & status);
+       void write_track_info_mp4ch (CDMarkerStatus & status);
 
        void write_index_info_cue (CDMarkerStatus & status);
        void write_index_info_toc (CDMarkerStatus & status);
+       void write_index_info_mp4ch (CDMarkerStatus & status);
 
        void frames_to_cd_frames_string (char* buf, framepos_t when);
+       void frames_to_chapter_marks_string (char* buf, framepos_t when);
+
        std::string toc_escape_cdtext (const std::string&);
        std::string toc_escape_filename (const std::string&);
        std::string cue_escape_cdtext (const std::string& txt);