#include <boost/shared_ptr.hpp>
#include <boost/thread.hpp>
#include <boost/thread/condition.hpp>
+#include "exceptions.h"
class Film;
class EncodedData;
class AudioBuffers;
+class Job;
namespace libdcp {
class MonoPictureAsset;
bool operator< (QueueItem const & a, QueueItem const & b);
bool operator== (QueueItem const & a, QueueItem const & b);
-class Writer
+class Writer : public ExceptionStore
{
public:
- Writer (boost::shared_ptr<Film>);
+ Writer (boost::shared_ptr<const Film>, boost::shared_ptr<Job>);
bool can_fake_write (int) const;
void check_existing_picture_mxf ();
/** our Film */
- boost::shared_ptr<Film> _film;
+ boost::shared_ptr<const Film> _film;
+ boost::shared_ptr<Job> _job;
/** the first frame index that does not already exist in our MXF */
int _first_nonexistant_frame;
due to the limit of frames to be held in memory.
*/
int _pushed_to_disk;
-
+
boost::shared_ptr<libdcp::MonoPictureAsset> _picture_asset;
boost::shared_ptr<libdcp::MonoPictureAssetWriter> _picture_asset_writer;
boost::shared_ptr<libdcp::SoundAsset> _sound_asset;