using std::map;
using std::string;
using std::vector;
-using boost::shared_ptr;
-using boost::dynamic_pointer_cast;
+using std::shared_ptr;
+using std::dynamic_pointer_cast;
using boost::bind;
using namespace dcpomatic;
}
/* Add a default font for any LoadFont nodes in our file which we haven't yet found fonts for */
- BOOST_FOREACH (shared_ptr<dcp::LoadFontNode> i, c->load_font_nodes()) {
+ for (auto i: c->load_font_nodes()) {
if (fm.find(i->id) == fm.end()) {
_fonts.push_back (FontData(i->id, dcp::ArrayData(default_font_file())));
}
Decoder::seek (time, accurate);
_next = _subtitles.begin ();
- list<shared_ptr<dcp::Subtitle> >::const_iterator i = _subtitles.begin ();
+ auto i = _subtitles.begin ();
while (i != _subtitles.end() && ContentTime::from_seconds ((*_next)->in().as_seconds()) < time) {
++i;
}
ContentTimePeriod const p = content_time_period (*_next);
while (_next != _subtitles.end () && content_time_period (*_next) == p) {
- shared_ptr<dcp::SubtitleString> ns = dynamic_pointer_cast<dcp::SubtitleString>(*_next);
+ auto ns = dynamic_pointer_cast<const dcp::SubtitleString>(*_next);
if (ns) {
s.push_back (*ns);
++_next;
this would need to be done both here and in DCPDecoder.
*/
- shared_ptr<dcp::SubtitleImage> ni = dynamic_pointer_cast<dcp::SubtitleImage>(*_next);
+ auto ni = dynamic_pointer_cast<const dcp::SubtitleImage>(*_next);
if (ni) {
emit_subtitle_image (p, *ni, film()->frame_size(), only_text());
++_next;
}
ContentTimePeriod
-DCPSubtitleDecoder::content_time_period (shared_ptr<dcp::Subtitle> s) const
+DCPSubtitleDecoder::content_time_period (shared_ptr<const dcp::Subtitle> s) const
{
- return ContentTimePeriod (
- ContentTime::from_seconds (s->in().as_seconds ()),
- ContentTime::from_seconds (s->out().as_seconds ())
- );
+ return {
+ ContentTime::from_seconds(s->in().as_seconds()),
+ ContentTime::from_seconds(s->out().as_seconds())
+ };
}