X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fexport_handler.h;h=dbc8213eed3c134dbf8f988939b8e6c24e26b5d4;hb=e5c607123588b318f28022488d74790fc1b7bebe;hp=05fbddecf57a08fb28f8a6729e47eb54c6097b04;hpb=650c6d5824222a8879df5c5ba9645c264ed3b84f;p=ardour.git diff --git a/libs/ardour/ardour/export_handler.h b/libs/ardour/ardour/export_handler.h index 05fbddecf5..dbc8213eed 100644 --- a/libs/ardour/ardour/export_handler.h +++ b/libs/ardour/ardour/export_handler.h @@ -31,6 +31,10 @@ #include "ardour/session.h" #include "ardour/types.h" +namespace AudioGrapher { + class BroadcastInfo; +} + namespace ARDOUR { @@ -40,6 +44,7 @@ class ExportFormatSpecification; class ExportFilename; class ExportGraphBuilder; + class ExportElementFactory { public: @@ -73,15 +78,17 @@ class ExportHandler : public ExportElementFactory public: struct FileSpec { FileSpec() {} - FileSpec (ChannelConfigPtr channel_config, FormatPtr format, FilenamePtr filename) + FileSpec (ChannelConfigPtr channel_config, FormatPtr format, FilenamePtr filename, boost::shared_ptr broadcast_info) : channel_config (channel_config) , format (format) , filename (filename) + , broadcast_info (broadcast_info) {} ChannelConfigPtr channel_config; FormatPtr format; FilenamePtr filename; + boost::shared_ptr broadcast_info; }; private: @@ -107,12 +114,12 @@ class ExportHandler : public ExportElementFactory public: ~ExportHandler (); - bool add_export_config (TimespanPtr timespan, ChannelConfigPtr channel_config, FormatPtr format, FilenamePtr filename); + bool add_export_config (TimespanPtr timespan, ChannelConfigPtr channel_config, FormatPtr format, FilenamePtr filename, boost::shared_ptr broadcast_info); void do_export (bool rt = false); private: - int process (nframes_t frames); + int process (framecnt_t frames); Session & session; GraphBuilderPtr graph_builder; @@ -125,7 +132,7 @@ class ExportHandler : public ExportElementFactory /* Timespan management */ void start_timespan (); - int process_timespan (nframes_t frames); + int process_timespan (framecnt_t frames); int process_normalize (); void finish_timespan (); @@ -134,7 +141,7 @@ class ExportHandler : public ExportElementFactory TimespanBounds timespan_bounds; PBD::ScopedConnection process_connection; - sframes_t process_position; + framepos_t process_position; /* CD Marker stuff */ @@ -154,13 +161,13 @@ class ExportHandler : public ExportElementFactory /* Track info */ uint32_t track_number; - sframes_t track_position; - sframes_t track_duration; - sframes_t track_start_frame; + framepos_t track_position; + framepos_t track_duration; + framepos_t track_start_frame; /* Index info */ uint32_t index_number; - sframes_t index_position; + framepos_t index_position; }; @@ -175,7 +182,7 @@ class ExportHandler : public ExportElementFactory void write_index_info_cue (CDMarkerStatus & status); void write_index_info_toc (CDMarkerStatus & status); - void frames_to_cd_frames_string (char* buf, sframes_t when); + void frames_to_cd_frames_string (char* buf, framepos_t when); int cue_tracknum; int cue_indexnum;