BOOST_FOREACH.
[dcpomatic.git] / src / lib / content.cc
index 2593c01df2ca7a569cf48f101d55883840dd0bed..5fb9d324ac8142953edfafe33ab2c4759af59068 100644 (file)
@@ -48,7 +48,7 @@ using std::cout;
 using std::vector;
 using std::max;
 using std::pair;
-using boost::shared_ptr;
+using std::shared_ptr;
 using boost::optional;
 using dcp::raw_convert;
 using dcp::locale_convert;
@@ -92,7 +92,7 @@ Content::Content (cxml::ConstNodePtr node)
        : _change_signals_frequent (false)
 {
        list<cxml::NodePtr> path_children = node->node_children ("Path");
-       BOOST_FOREACH (cxml::NodePtr i, path_children) {
+       for (auto i: path_children) {
                _paths.push_back (i->content());
                optional<time_t> const mod = i->optional_number_attribute<time_t>("mtime");
                if (mod) {
@@ -192,7 +192,7 @@ Content::examine (shared_ptr<const Film>, shared_ptr<Job> job)
        _digest = d;
 
        _last_write_times.clear ();
-       BOOST_FOREACH (boost::filesystem::path i, _paths) {
+       for (auto i: _paths) {
                _last_write_times.push_back (boost::filesystem::last_write_time(i));
        }
 }
@@ -206,7 +206,7 @@ Content::signal_change (ChangeType c, int p)
                } else {
                        emit (boost::bind (boost::ref(Change), c, shared_from_this(), p, _change_signals_frequent));
                }
-       } catch (boost::bad_weak_ptr &) {
+       } catch (std::bad_weak_ptr &) {
                /* This must be during construction; never mind */
        }
 }
@@ -303,7 +303,11 @@ Content::technical_summary () const
 DCPTime
 Content::length_after_trim (shared_ptr<const Film> film) const
 {
-       return max(DCPTime(), full_length(film) - DCPTime(trim_start() + trim_end(), film->active_frame_rate_change(position()))).round(film->video_frame_rate());
+       DCPTime length = max(DCPTime(), full_length(film) - DCPTime(trim_start() + trim_end(), film->active_frame_rate_change(position())));
+       if (video) {
+               length = length.round(film->video_frame_rate());
+       }
+       return length;
 }
 
 /** @return string which changes when something about this content changes which affects
@@ -323,7 +327,7 @@ Content::identifier () const
 bool
 Content::paths_valid () const
 {
-       BOOST_FOREACH (boost::filesystem::path i, _paths) {
+       for (auto i: _paths) {
                if (!boost::filesystem::exists (i)) {
                        return false;
                }
@@ -341,7 +345,7 @@ Content::set_paths (vector<boost::filesystem::path> paths)
                boost::mutex::scoped_lock lm (_mutex);
                _paths = paths;
                _last_write_times.clear ();
-               BOOST_FOREACH (boost::filesystem::path i, _paths) {
+               for (auto i: _paths) {
                        _last_write_times.push_back (boost::filesystem::last_write_time(i));
                }
        }
@@ -491,7 +495,7 @@ Content::only_text () const
 shared_ptr<TextContent>
 Content::text_of_original_type (TextType type) const
 {
-       BOOST_FOREACH (shared_ptr<TextContent> i, text) {
+       for (auto i: text) {
                if (i->original_type() == type) {
                        return i;
                }