/*
- Copyright (C) 2013 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2013-2021 Carl Hetherington <cth@carlh.net>
- This program is free software; you can redistribute it and/or modify
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
- This program is distributed in the hope that it will be useful,
+ DCP-o-matic is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <boost/filesystem.hpp>
+
#include "job.h"
+#include "kdm_with_metadata.h"
+#include <dcp/types.h>
+#include <dcp/name_format.h>
+#include <boost/filesystem.hpp>
+#include <vector>
+
+
+namespace dcpomatic {
+ class Screen;
+}
+
+
+class Log;
-class Screen;
class SendKDMEmailJob : public Job
{
public:
SendKDMEmailJob (
- boost::shared_ptr<const Film>,
- std::list<boost::shared_ptr<Screen> >,
- boost::filesystem::path,
- boost::posix_time::ptime,
- boost::posix_time::ptime
+ std::list<KDMWithMetadataPtr> kdms,
+ dcp::NameFormat container_name_format,
+ dcp::NameFormat filename_format,
+ std::string cpl_name,
+ std::vector<std::string> extra_addresses
+ );
+
+ SendKDMEmailJob (
+ std::list<std::list<KDMWithMetadataPtr>> kdms,
+ dcp::NameFormat container_name_format,
+ dcp::NameFormat filename_format,
+ std::string cpl_name,
+ std::vector<std::string> extra_addresses
);
- std::string name () const;
- void run ();
+ ~SendKDMEmailJob ();
+
+ std::string name () const override;
+ std::string json_name () const override;
+ void run () override;
private:
- std::list<boost::shared_ptr<Screen> > _screens;
- boost::filesystem::path _dcp;
- boost::posix_time::ptime _from;
- boost::posix_time::ptime _to;
+ dcp::NameFormat _container_name_format;
+ dcp::NameFormat _filename_format;
+ std::string _cpl_name;
+ std::list<std::list<KDMWithMetadataPtr>> _kdms;
+ std::vector<std::string> _extra_addresses;
};