Use dcp::File in DCP-o-matic (#2231).
[dcpomatic.git] / src / lib / reel_writer.h
index 5eb0e1b08215c1e2aa87358bd67e6b9ee0ee99a5..bee76ded3fd65b5fb6cbe7272d98c8ad2a3a7cd4 100644 (file)
@@ -25,8 +25,9 @@
 #include "player_text.h"
 #include "dcp_text_track.h"
 #include "weak_film.h"
-#include <dcp/picture_asset_writer.h>
 #include <dcp/atmos_asset_writer.h>
+#include <dcp/file.h>
+#include <dcp/picture_asset_writer.h>
 
 namespace dcpomatic {
        class FontData;
@@ -81,7 +82,7 @@ public:
                bool ensure_subtitles,
                std::set<DCPTextTrack> ensure_closed_captions
                );
-       void calculate_digests (boost::function<void (float)> set_progress);
+       void calculate_digests (std::function<void (float)> set_progress);
 
        Frame start () const;
 
@@ -102,8 +103,8 @@ private:
        void write_frame_info (Frame frame, Eyes eyes, dcp::FrameInfo info) const;
        long frame_info_position (Frame frame, Eyes eyes) const;
        Frame check_existing_picture_asset (boost::filesystem::path asset);
-       bool existing_picture_frame_ok (FILE* asset_file, std::shared_ptr<InfoFileHandle> info_file, Frame frame) const;
-       std::shared_ptr<dcp::SubtitleAsset> empty_text_asset (TextType type, boost::optional<DCPTextTrack> track) const;
+       bool existing_picture_frame_ok (dcp::File& asset_file, std::shared_ptr<InfoFileHandle> info_file, Frame frame) const;
+       std::shared_ptr<dcp::SubtitleAsset> empty_text_asset (TextType type, boost::optional<DCPTextTrack> track, bool with_dummy) const;
 
        std::shared_ptr<dcp::ReelPictureAsset> create_reel_picture (std::shared_ptr<dcp::Reel> reel, std::list<ReferencedReelAsset> const & refs) const;
        void create_reel_sound (std::shared_ptr<dcp::Reel> reel, std::list<ReferencedReelAsset> const & refs) const;
@@ -139,7 +140,7 @@ private:
        std::shared_ptr<dcp::SoundAsset> _sound_asset;
        std::shared_ptr<dcp::SoundAssetWriter> _sound_asset_writer;
        std::shared_ptr<dcp::SubtitleAsset> _subtitle_asset;
-       std::map<DCPTextTrack, std::shared_ptr<dcp::SubtitleAsset> > _closed_caption_assets;
+       std::map<DCPTextTrack, std::shared_ptr<dcp::SubtitleAsset>> _closed_caption_assets;
        std::shared_ptr<dcp::AtmosAsset> _atmos_asset;
        std::shared_ptr<dcp::AtmosAssetWriter> _atmos_asset_writer;