diff options
| author | Carl Hetherington <cth@carlh.net> | 2023-02-09 22:49:47 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2023-02-10 10:31:15 +0100 |
| commit | fbdfc901498605f89f28a57d595df966bddc4eb1 (patch) | |
| tree | 41f046cc60ee9ab11cbb391d0afce114bbd685d2 | |
| parent | ead33f1db9657b3af93ec966d7bbc24218b6fba0 (diff) | |
Cleanup: add Content::period().
| -rw-r--r-- | src/lib/content.h | 4 | ||||
| -rw-r--r-- | src/lib/empty.cc | 2 | ||||
| -rw-r--r-- | src/lib/overlaps.cc | 2 | ||||
| -rw-r--r-- | src/lib/player.cc | 4 | ||||
| -rw-r--r-- | src/lib/playlist.cc | 2 | ||||
| -rw-r--r-- | src/wx/timeline.cc | 5 |
6 files changed, 12 insertions, 7 deletions
diff --git a/src/lib/content.h b/src/lib/content.h index eddce2858..979680d6a 100644 --- a/src/lib/content.h +++ b/src/lib/content.h @@ -175,6 +175,10 @@ public: return position() + length_after_trim(film); } + dcpomatic::DCPTimePeriod period(std::shared_ptr<const Film> film) const { + return { position(), end(film) }; + } + dcpomatic::DCPTime length_after_trim (std::shared_ptr<const Film> film) const; boost::optional<double> video_frame_rate () const { diff --git a/src/lib/empty.cc b/src/lib/empty.cc index 96d036463..a75066395 100644 --- a/src/lib/empty.cc +++ b/src/lib/empty.cc @@ -43,7 +43,7 @@ Empty::Empty (shared_ptr<const Film> film, shared_ptr<const Playlist> playlist, list<DCPTimePeriod> full; for (auto i: playlist->content()) { if (part(i) && i->paths_valid()) { - full.push_back (DCPTimePeriod(i->position(), i->end(film))); + full.push_back(i->period(film)); } } diff --git a/src/lib/overlaps.cc b/src/lib/overlaps.cc index 770882cd5..fbc6b5cb1 100644 --- a/src/lib/overlaps.cc +++ b/src/lib/overlaps.cc @@ -33,7 +33,7 @@ ContentList overlaps (shared_ptr<const Film> film, ContentList cl, function<bool ContentList overlaps; DCPTimePeriod period (from, to); for (auto i: cl) { - if (part(i) && DCPTimePeriod(i->position(), i->end(film)).overlap(period)) { + if (part(i) && i->period(film).overlap(period)) { overlaps.push_back (i); } } diff --git a/src/lib/player.cc b/src/lib/player.cc index 76e7239aa..575fd5c23 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -381,10 +381,10 @@ Player::setup_pieces () for (auto piece = _pieces.begin(); piece != _pieces.end(); ++piece) { if (ignore_overlap((*piece)->content->video)) { /* Look for content later in the content list with in-use video that overlaps this */ - auto const period = DCPTimePeriod((*piece)->content->position(), (*piece)->content->end(film)); + auto const period = (*piece)->content->period(film); for (auto later_piece = std::next(piece); later_piece != _pieces.end(); ++later_piece) { if (ignore_overlap((*later_piece)->content->video)) { - (*piece)->ignore_video = DCPTimePeriod((*later_piece)->content->position(), (*later_piece)->content->end(film)).overlap(period); + (*piece)->ignore_video = (*later_piece)->content->period(film).overlap(period); } } } diff --git a/src/lib/playlist.cc b/src/lib/playlist.cc index 5f26b94f3..df7c95cc0 100644 --- a/src/lib/playlist.cc +++ b/src/lib/playlist.cc @@ -683,7 +683,7 @@ Playlist::content_summary (shared_ptr<const Film> film, DCPTimePeriod period) co int best_score = -1; for (auto i: content()) { int score = 0; - auto const o = DCPTimePeriod(i->position(), i->end(film)).overlap (period); + auto const o = i->period(film).overlap(period); if (o) { score += 100 * o.get().duration().get() / period.duration().get(); } diff --git a/src/wx/timeline.cc b/src/wx/timeline.cc index 0d7ae7afb..2b8fba6fd 100644 --- a/src/wx/timeline.cc +++ b/src/wx/timeline.cc @@ -330,7 +330,7 @@ place (shared_ptr<const Film> film, TimelineViewList& views, int& tracks) int t = base; auto content = cv->content(); - DCPTimePeriod const content_period (content->position(), content->end(film)); + DCPTimePeriod const content_period = content->period(film); while (true) { auto j = views.begin(); @@ -344,7 +344,8 @@ place (shared_ptr<const Film> film, TimelineViewList& views, int& tracks) auto test_content = test->content(); if ( test->track() && test->track().get() == t && - content_period.overlap(DCPTimePeriod(test_content->position(), test_content->end(film)))) { + content_period.overlap(test_content->period(film)) + ) { /* we have an overlap on track `t' */ ++t; break; |
