From c00a07e811406bfd7698f232637ecec07439fb6b Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 9 Feb 2016 13:15:54 +0100 Subject: detailed export state, prepare resolution for #6512 (Post-processing step should announce itself during an export) --- libs/ardour/ardour/export_status.h | 8 +++++++- libs/ardour/export_handler.cc | 7 ++++--- libs/ardour/export_status.cc | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) (limited to 'libs') diff --git a/libs/ardour/ardour/export_status.h b/libs/ardour/ardour/export_status.h index 6a5be177e4..6c6396dc5f 100644 --- a/libs/ardour/ardour/export_status.h +++ b/libs/ardour/ardour/export_status.h @@ -53,7 +53,13 @@ class LIBARDOUR_API ExportStatus { /* Progress info */ - volatile bool normalizing; + volatile enum Progress { + Exporting, + Normalizing, + Tagging, + Uploading, + Command } + active_job; volatile uint32_t total_timespans; volatile uint32_t timespan; diff --git a/libs/ardour/export_handler.cc b/libs/ardour/export_handler.cc index f53f270918..71f79b793c 100644 --- a/libs/ardour/export_handler.cc +++ b/libs/ardour/export_handler.cc @@ -272,9 +272,9 @@ ExportHandler::process_normalize () { if (graph_builder->process_normalize ()) { finish_timespan (); - export_status->normalizing = false; + export_status->active_job = ExportStatus::Exporting; } else { - export_status->normalizing = true; + export_status->active_job = ExportStatus::Normalizing; } export_status->current_normalize_cycle++; @@ -316,6 +316,7 @@ ExportHandler::finish_timespan () * TODO: check Umlauts and encoding in filename. * TagLib eventually calls CreateFileA(), */ + export_status->active_job = ExportStatus::Tagging; graph_builder->reset (); AudiofileTagger::tag_file(filename, *SessionMetadata::Metadata()); } @@ -330,7 +331,7 @@ ExportHandler::finish_timespan () ... }; #endif - + export_status->active_job = ExportStatus::Command; PBD::ScopedConnection command_connection; std::map subs; subs.insert (std::pair ('f', filename)); diff --git a/libs/ardour/export_status.cc b/libs/ardour/export_status.cc index 0f7938bb7f..66f02c59c3 100644 --- a/libs/ardour/export_status.cc +++ b/libs/ardour/export_status.cc @@ -39,7 +39,7 @@ ExportStatus::init () _finished = false; _errors = false; - normalizing = false; + active_job = Exporting; total_timespans = 0; timespan = 0; -- cgit v1.2.3