Tidy up careful_string_filter and add some extra transliterations.
[dcpomatic.git] / src / lib / string_text_file_decoder.cc
index 415851aef4737366127a26ba2ee7e09af75a6069..d366bedc0fa84ebd578650eed2c18fb94ef012c6 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2014-2018 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2014-2021 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
 
 */
 
+
 #include "string_text_file_decoder.h"
 #include "string_text_file_content.h"
 #include "text_content.h"
 #include "text_decoder.h"
 #include <dcp/subtitle_string.h>
-#include <boost/foreach.hpp>
 #include <iostream>
 
-using std::list;
-using std::vector;
-using std::string;
+
 using std::cout;
-using std::max;
+using std::make_shared;
 using std::shared_ptr;
-using boost::optional;
-using std::dynamic_pointer_cast;
+using std::string;
+using std::vector;
 using namespace dcpomatic;
 
+
 StringTextFileDecoder::StringTextFileDecoder (shared_ptr<const Film> film, shared_ptr<const StringTextFileContent> content)
        : Decoder (film)
        , StringTextFile (content)
@@ -45,9 +44,10 @@ StringTextFileDecoder::StringTextFileDecoder (shared_ptr<const Film> film, share
        if (!_subtitles.empty()) {
                first = content_time_period(_subtitles[0]).from;
        }
-       text.push_back (shared_ptr<TextDecoder> (new TextDecoder (this, content->only_text(), first)));
+       text.push_back (make_shared<TextDecoder>(this, content->only_text(), first));
 }
 
+
 void
 StringTextFileDecoder::seek (ContentTime time, bool accurate)
 {
@@ -67,6 +67,7 @@ StringTextFileDecoder::seek (ContentTime time, bool accurate)
        }
 }
 
+
 bool
 StringTextFileDecoder::pass ()
 {
@@ -81,6 +82,7 @@ StringTextFileDecoder::pass ()
        return false;
 }
 
+
 ContentTimePeriod
 StringTextFileDecoder::content_time_period (sub::Subtitle s) const
 {
@@ -95,8 +97,8 @@ vector<FontData>
 StringTextFileDecoder::fonts () const
 {
        vector<FontData> data;
-       BOOST_FOREACH (shared_ptr<TextDecoder> i, text) {
-               BOOST_FOREACH (shared_ptr<Font> j, i->content()->fonts()) {
+       for (auto i: text) {
+               for (auto j: i->content()->fonts()) {
                        data.push_back (FontData(j));
                }
        }