From: Carl Hetherington Date: Mon, 4 May 2020 21:37:22 +0000 (+0200) Subject: Pull methods out of CinemaKDMs. X-Git-Tag: v2.15.72~6^2~16 X-Git-Url: https://main.carlh.net/gitweb/?p=dcpomatic.git;a=commitdiff_plain;h=aa382124eeabcad7a7346d46fb5f931c1364a849 Pull methods out of CinemaKDMs. --- diff --git a/src/lib/cinema_kdms.cc b/src/lib/cinema_kdms.cc index 56b76d3f9..d96a95d7f 100644 --- a/src/lib/cinema_kdms.cc +++ b/src/lib/cinema_kdms.cc @@ -43,13 +43,13 @@ using boost::function; using boost::optional; void -CinemaKDMs::make_zip_file (boost::filesystem::path zip_file, dcp::NameFormat name_format, dcp::NameFormat::Map name_values) const +make_zip_file (CinemaKDMs kdms, boost::filesystem::path zip_file, dcp::NameFormat name_format, dcp::NameFormat::Map name_values) { Zipper zipper (zip_file); - name_values['c'] = cinema->name; + name_values['c'] = kdms.cinema->name; - BOOST_FOREACH (KDMWithMetadataPtr i, screen_kdms) { + BOOST_FOREACH (KDMWithMetadataPtr i, kdms.screen_kdms) { name_values['i'] = i->kdm_id (); string const name = careful_string_filter(name_format.get(name_values, ".xml")); zipper.add (name, i->kdm_as_xml()); @@ -62,7 +62,7 @@ CinemaKDMs::make_zip_file (boost::filesystem::path zip_file, dcp::NameFormat nam * CinemaKDM contains the KDMs for its cinema. */ list -CinemaKDMs::collect (list screen_kdms) +collect (list screen_kdms) { list cinema_kdms; @@ -98,7 +98,7 @@ CinemaKDMs::collect (list screen_kdms) /** Write one directory per cinema into another directory */ int -CinemaKDMs::write_directories ( +write_directories ( list cinema_kdms, boost::filesystem::path directory, dcp::NameFormat container_name_format, @@ -128,7 +128,7 @@ CinemaKDMs::write_directories ( /** Write one ZIP file per cinema into a directory */ int -CinemaKDMs::write_zip_files ( +write_zip_files ( list cinema_kdms, boost::filesystem::path directory, dcp::NameFormat container_name_format, @@ -151,7 +151,7 @@ CinemaKDMs::write_zip_files ( /* Creating a new zip file over an existing one is an error */ boost::filesystem::remove (path); } - i.make_zip_file (path, filename_format, name_values); + make_zip_file (i, path, filename_format, name_values); written += i.screen_kdms.size(); } } @@ -167,7 +167,7 @@ CinemaKDMs::write_zip_files ( * @param cpl_name Name of the CPL that the KDMs are for. */ void -CinemaKDMs::email ( +email ( list cinema_kdms, dcp::NameFormat container_name_format, dcp::NameFormat filename_format, @@ -195,7 +195,7 @@ CinemaKDMs::email ( boost::filesystem::path zip_file = boost::filesystem::temp_directory_path() / boost::filesystem::unique_path(); boost::filesystem::create_directories (zip_file); zip_file /= container_name_format.get(name_values, ".zip"); - i.make_zip_file (zip_file, filename_format, name_values); + make_zip_file (i, zip_file, filename_format, name_values); string subject = config->kdm_subject(); boost::algorithm::replace_all (subject, "$CPL_NAME", cpl_name); diff --git a/src/lib/cinema_kdms.h b/src/lib/cinema_kdms.h index 918670397..592bec923 100644 --- a/src/lib/cinema_kdms.h +++ b/src/lib/cinema_kdms.h @@ -27,11 +27,15 @@ class Log; class CinemaKDMs { public: - void make_zip_file (boost::filesystem::path zip_file, dcp::NameFormat name_format, dcp::NameFormat::Map name_values) const; + boost::shared_ptr cinema; + std::list screen_kdms; +}; + +void make_zip_file (CinemaKDMs kdms, boost::filesystem::path zip_file, dcp::NameFormat name_format, dcp::NameFormat::Map name_values); - static std::list collect (std::list kdms); +std::list collect (std::list kdms); - static int write_directories ( +int write_directories ( std::list cinema_kdms, boost::filesystem::path directory, dcp::NameFormat container_name_format, @@ -40,7 +44,7 @@ public: boost::function confirm_overwrite ); - static int write_zip_files ( +int write_zip_files ( std::list cinema_kdms, boost::filesystem::path directory, dcp::NameFormat container_name_format, @@ -49,7 +53,7 @@ public: boost::function confirm_overwrite ); - static void email ( +void email ( std::list cinema_kdms, dcp::NameFormat container_name_format, dcp::NameFormat filename_format, @@ -57,6 +61,3 @@ public: std::string cpl_name ); - boost::shared_ptr cinema; - std::list screen_kdms; -}; diff --git a/src/lib/send_kdm_email_job.cc b/src/lib/send_kdm_email_job.cc index 1b476fa63..10a571ead 100644 --- a/src/lib/send_kdm_email_job.cc +++ b/src/lib/send_kdm_email_job.cc @@ -79,7 +79,7 @@ void SendKDMEmailJob::run () { set_progress_unknown (); - CinemaKDMs::email (_cinema_kdms, _container_name_format, _filename_format, _name_values, _cpl_name); + email (_cinema_kdms, _container_name_format, _filename_format, _name_values, _cpl_name); set_progress (1); set_state (FINISHED_OK); } diff --git a/src/tools/dcpomatic_kdm_cli.cc b/src/tools/dcpomatic_kdm_cli.cc index dd7fc82e3..493eea2c9 100644 --- a/src/tools/dcpomatic_kdm_cli.cc +++ b/src/tools/dcpomatic_kdm_cli.cc @@ -140,8 +140,8 @@ write_files ( ) { if (zip) { - int const N = CinemaKDMs::write_zip_files ( - CinemaKDMs::collect (screen_kdms), + int const N = write_zip_files ( + collect (screen_kdms), output, container_name_format, filename_format, diff --git a/src/wx/kdm_output_panel.cc b/src/wx/kdm_output_panel.cc index 541674ae1..fe87dfccd 100644 --- a/src/wx/kdm_output_panel.cc +++ b/src/wx/kdm_output_panel.cc @@ -186,7 +186,7 @@ KDMOutputPanel::make ( list screen_kdms, string name, KDMTimingPanel* timing, function confirm_overwrite ) { - list const cinema_kdms = CinemaKDMs::collect (screen_kdms); + list const cinema_kdms = collect (screen_kdms); /* Decide whether to proceed */ @@ -255,8 +255,8 @@ KDMOutputPanel::make ( confirm_overwrite ); } else if (_write_folder->GetValue()) { - written = CinemaKDMs::write_directories ( - CinemaKDMs::collect (screen_kdms), + written = write_directories ( + collect (screen_kdms), directory(), _container_name_format->get(), _filename_format->get(), @@ -264,8 +264,8 @@ KDMOutputPanel::make ( confirm_overwrite ); } else if (_write_zip->GetValue()) { - written = CinemaKDMs::write_zip_files ( - CinemaKDMs::collect (screen_kdms), + written = write_zip_files ( + collect (screen_kdms), directory(), _container_name_format->get(), _filename_format->get(),