diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-08-19 01:04:59 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-08-19 01:29:04 +0100 |
| commit | 6c7489e5d778d3e71065d88a094a7383ba2c117d (patch) | |
| tree | e3f05ad03095d88d297c7d61e03e265d28a97fa3 /src/lib/player.h | |
| parent | 9a27d60ea7888d300a5a2414a477091428589b82 (diff) | |
Replace May/Done/NotDone signal sets with one signal and extend
this treatment to anything that caused Player::setup_pieces. This should
fix out-of-sequence Player emissions caused by setup_pieces being called
by one thread while the butler is calling pass().
Diffstat (limited to 'src/lib/player.h')
| -rw-r--r-- | src/lib/player.h | 26 |
1 files changed, 5 insertions, 21 deletions
diff --git a/src/lib/player.h b/src/lib/player.h index f7ab1000d..165820799 100644 --- a/src/lib/player.h +++ b/src/lib/player.h @@ -88,19 +88,7 @@ public: boost::optional<DCPTime> content_time_to_dcp (boost::shared_ptr<Content> content, ContentTime t); - /* The player's internal state may be about to change such so - that its emissions from Video and Audio will suddenly be - from an undefined position. Listeners should prepare - themselves for this possibility. - */ - boost::signals2::signal<void ()> MayChange; - - /** The player's internal state has now changed. - * - * The first parameter is what changed. - * The second parameter is true if these signals are currently likely to be frequent. - */ - boost::signals2::signal<void (int, bool)> Changed; + boost::signals2::signal<void (ChangeType, int, bool)> Change; /** The change suggested by a MayChange did not happen */ boost::signals2::signal<void ()> NotChanged; @@ -125,10 +113,8 @@ private: void setup_pieces_unlocked (); void flush (); void film_changed (Film::Property); - void playlist_changed (); - void playlist_content_may_change (); - void playlist_content_changed (boost::weak_ptr<Content>, int, bool); - void playlist_content_not_changed (); + void playlist_change (ChangeType); + void playlist_content_change (ChangeType, int, bool); std::list<PositionImage> transform_bitmap_texts (std::list<BitmapText>) const; Frame dcp_to_content_video (boost::shared_ptr<const Piece> piece, DCPTime t) const; DCPTime content_video_to_dcp (boost::shared_ptr<const Piece> piece, Frame f) const; @@ -217,10 +203,8 @@ private: boost::shared_ptr<AudioProcessor> _audio_processor; boost::signals2::scoped_connection _film_changed_connection; - boost::signals2::scoped_connection _playlist_changed_connection; - boost::signals2::scoped_connection _playlist_content_may_change_connection; - boost::signals2::scoped_connection _playlist_content_changed_connection; - boost::signals2::scoped_connection _playlist_content_not_changed_connection; + boost::signals2::scoped_connection _playlist_change_connection; + boost::signals2::scoped_connection _playlist_content_change_connection; }; #endif |
