Use atomic for _playback_length.
[dcpomatic.git] / src / lib / player.h
index ce8b7cc5a53894fcc6d727d5ae790f393c0417f9..388a160c79727e10069ed9cc8039373177ed4d08 100644 (file)
@@ -81,7 +81,7 @@ public:
        void seek (dcpomatic::DCPTime time, bool accurate);
 
        std::vector<std::shared_ptr<dcpomatic::Font>> get_subtitle_fonts ();
-       std::list<ReferencedReelAsset> get_reel_assets ();
+
        dcp::Size video_container_size () const {
                return _video_container_size;
        }
@@ -95,8 +95,8 @@ public:
        void set_play_referenced ();
        void set_dcp_decode_reduction (boost::optional<int> reduction);
 
-       boost::optional<dcpomatic::DCPTime> content_time_to_dcp (std::shared_ptr<const Content> content, dcpomatic::ContentTime t);
-       boost::optional<dcpomatic::ContentTime> dcp_to_content_time (std::shared_ptr<const Content> content, dcpomatic::DCPTime t);
+       boost::optional<dcpomatic::DCPTime> content_time_to_dcp (std::shared_ptr<const Content> content, dcpomatic::ContentTime t) const;
+       boost::optional<dcpomatic::ContentTime> dcp_to_content_time (std::shared_ptr<const Content> content, dcpomatic::DCPTime t) const;
 
        boost::signals2::signal<void (ChangeType, int, bool)> Change;
 
@@ -126,7 +126,6 @@ private:
 
        void construct ();
        void setup_pieces ();
-       void setup_pieces_unlocked ();
        void film_change (ChangeType, Film::Property);
        void playlist_change (ChangeType);
        void playlist_content_change (ChangeType, int, bool);
@@ -226,7 +225,7 @@ private:
        ActiveText _active_texts[static_cast<int>(TextType::COUNT)];
        std::shared_ptr<AudioProcessor> _audio_processor;
 
-       dcpomatic::DCPTime _playback_length;
+       boost::atomic<dcpomatic::DCPTime> _playback_length;
 
        /** Alignment for subtitle images that we create */
        Image::Alignment const _subtitle_alignment = Image::Alignment::PADDED;