diff options
| author | Carl Hetherington <cth@carlh.net> | 2015-11-26 11:21:58 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2015-11-26 11:21:58 +0000 |
| commit | 5dd999eb0960ed4db25e98f2c2a5e4da2de2ced9 (patch) | |
| tree | 4dfa62ce0a3ed92a0e51a56a40c8953f40ce7617 | |
| parent | 379432d6ed7a460601a70607a542ebb50bbf902f (diff) | |
Tidy up; more/better use of BOOST_FOREACH.
| -rw-r--r-- | src/interop_subtitle_asset.cc | 6 | ||||
| -rw-r--r-- | src/smpte_subtitle_asset.cc | 6 | ||||
| -rw-r--r-- | src/subtitle_asset.cc | 123 |
3 files changed, 65 insertions, 70 deletions
diff --git a/src/interop_subtitle_asset.cc b/src/interop_subtitle_asset.cc index f450d360..8b88ce6b 100644 --- a/src/interop_subtitle_asset.cc +++ b/src/interop_subtitle_asset.cc @@ -52,15 +52,13 @@ InteropSubtitleAsset::InteropSubtitleAsset (boost::filesystem::path file) _movie_title = xml->string_child ("MovieTitle"); _load_font_nodes = type_children<dcp::InteropLoadFontNode> (xml, "LoadFont"); - list<cxml::NodePtr> f = xml->node_children ("Font"); list<shared_ptr<dcp::FontNode> > font_nodes; - BOOST_FOREACH (cxml::NodePtr& i, f) { + BOOST_FOREACH (cxml::NodePtr const & i, xml->node_children ("Font")) { font_nodes.push_back (shared_ptr<FontNode> (new FontNode (i, 250, "Id"))); } - f = xml->node_children ("Subtitle"); list<shared_ptr<dcp::SubtitleNode> > subtitle_nodes; - BOOST_FOREACH (cxml::NodePtr& i, f) { + BOOST_FOREACH (cxml::NodePtr const & i, xml->node_children ("Subtitle")) { subtitle_nodes.push_back (shared_ptr<SubtitleNode> (new SubtitleNode (i, 250, "Id"))); } diff --git a/src/smpte_subtitle_asset.cc b/src/smpte_subtitle_asset.cc index 165e88e3..08462a4a 100644 --- a/src/smpte_subtitle_asset.cc +++ b/src/smpte_subtitle_asset.cc @@ -118,15 +118,13 @@ SMPTESubtitleAsset::SMPTESubtitleAsset (boost::filesystem::path file) shared_ptr<cxml::Node> subtitle_list = xml->optional_node_child ("SubtitleList"); - list<cxml::NodePtr> f = subtitle_list->node_children ("Font"); list<shared_ptr<dcp::FontNode> > font_nodes; - BOOST_FOREACH (cxml::NodePtr& i, f) { + BOOST_FOREACH (cxml::NodePtr const & i, subtitle_list->node_children ("Font")) { font_nodes.push_back (shared_ptr<FontNode> (new FontNode (i, _time_code_rate, "ID"))); } - f = subtitle_list->node_children ("Subtitle"); list<shared_ptr<dcp::SubtitleNode> > subtitle_nodes; - BOOST_FOREACH (cxml::NodePtr& i, f) { + BOOST_FOREACH (cxml::NodePtr const & i, subtitle_list->node_children ("Subtitle")) { subtitle_nodes.push_back (shared_ptr<SubtitleNode> (new SubtitleNode (i, _time_code_rate, "ID"))); } diff --git a/src/subtitle_asset.cc b/src/subtitle_asset.cc index 3dcc9ad6..bdc630a0 100644 --- a/src/subtitle_asset.cc +++ b/src/subtitle_asset.cc @@ -78,10 +78,10 @@ SubtitleAsset::examine_subtitle_nodes ( ParseState& parse_state ) { - for (list<shared_ptr<dcp::SubtitleNode> >::const_iterator j = subtitle_nodes.begin(); j != subtitle_nodes.end(); ++j) { - parse_state.subtitle_nodes.push_back (*j); - examine_text_nodes (xml, (*j)->text_nodes, parse_state); - examine_font_nodes (xml, (*j)->font_nodes, parse_state); + BOOST_FOREACH (shared_ptr<dcp::SubtitleNode> i, subtitle_nodes) { + parse_state.subtitle_nodes.push_back (i); + examine_text_nodes (xml, i->text_nodes, parse_state); + examine_font_nodes (xml, i->font_nodes, parse_state); parse_state.subtitle_nodes.pop_back (); } } @@ -93,15 +93,14 @@ SubtitleAsset::examine_font_nodes ( ParseState& parse_state ) { - for (list<shared_ptr<dcp::FontNode> >::const_iterator i = font_nodes.begin(); i != font_nodes.end(); ++i) { + BOOST_FOREACH (shared_ptr<dcp::FontNode> i, font_nodes) { - parse_state.font_nodes.push_back (*i); - maybe_add_subtitle ((*i)->text, parse_state); + parse_state.font_nodes.push_back (i); + maybe_add_subtitle (i->text, parse_state); - examine_subtitle_nodes (xml, (*i)->subtitle_nodes, parse_state); - - examine_font_nodes (xml, (*i)->font_nodes, parse_state); - examine_text_nodes (xml, (*i)->text_nodes, parse_state); + examine_subtitle_nodes (xml, i->subtitle_nodes, parse_state); + examine_font_nodes (xml, i->font_nodes, parse_state); + examine_text_nodes (xml, i->text_nodes, parse_state); parse_state.font_nodes.pop_back (); } @@ -114,10 +113,10 @@ SubtitleAsset::examine_text_nodes ( ParseState& parse_state ) { - for (list<shared_ptr<dcp::TextNode> >::const_iterator i = text_nodes.begin(); i != text_nodes.end(); ++i) { - parse_state.text_nodes.push_back (*i); - maybe_add_subtitle ((*i)->text, parse_state); - examine_font_nodes (xml, (*i)->font_nodes, parse_state); + BOOST_FOREACH (shared_ptr<dcp::TextNode> i, text_nodes) { + parse_state.text_nodes.push_back (i); + maybe_add_subtitle (i->text, parse_state); + examine_font_nodes (xml, i->font_nodes, parse_state); parse_state.text_nodes.pop_back (); } } @@ -166,9 +165,9 @@ list<SubtitleString> SubtitleAsset::subtitles_during (Time from, Time to, bool starting) const { list<SubtitleString> s; - for (list<SubtitleString>::const_iterator i = _subtitles.begin(); i != _subtitles.end(); ++i) { - if ((starting && from <= i->in() && i->in() < to) || (!starting && i->out() >= from && i->in() <= to)) { - s.push_back (*i); + BOOST_FOREACH (SubtitleString const & i, _subtitles) { + if ((starting && from <= i.in() && i.in() < to) || (!starting && i.out() >= from && i.in() <= to)) { + s.push_back (i); } } @@ -185,9 +184,9 @@ Time SubtitleAsset::latest_subtitle_out () const { Time t; - for (list<SubtitleString>::const_iterator i = _subtitles.begin(); i != _subtitles.end(); ++i) { - if (i->out() > t) { - t = i->out (); + BOOST_FOREACH (SubtitleString const & i, _subtitles) { + if (i.out() > t) { + t = i.out (); } } @@ -252,7 +251,7 @@ SubtitleAsset::subtitles_as_xml (xmlpp::Element* root, int time_code_rate, Stand xmlpp::Element* font_element = 0; xmlpp::Element* subtitle_element = 0; - for (list<SubtitleString>::iterator i = sorted.begin(); i != sorted.end(); ++i) { + BOOST_FOREACH (SubtitleString const & i, sorted) { /* We will start a new <Font>...</Font> whenever some font property changes. I suppose we should really make an optimal hierarchy of <Font> tags, but @@ -260,22 +259,22 @@ SubtitleAsset::subtitles_as_xml (xmlpp::Element* root, int time_code_rate, Stand */ bool const font_changed = - font != i->font() || - italic != i->italic() || - colour != i->colour() || - size != i->size() || - fabs (aspect_adjust - i->aspect_adjust()) > ASPECT_ADJUST_EPSILON || - effect != i->effect() || - effect_colour != i->effect_colour(); + font != i.font() || + italic != i.italic() || + colour != i.colour() || + size != i.size() || + fabs (aspect_adjust - i.aspect_adjust()) > ASPECT_ADJUST_EPSILON || + effect != i.effect() || + effect_colour != i.effect_colour(); if (font_changed) { - font = i->font (); - italic = i->italic (); - colour = i->colour (); - size = i->size (); - aspect_adjust = i->aspect_adjust (); - effect = i->effect (); - effect_colour = i->effect_colour (); + font = i.font (); + italic = i.italic (); + colour = i.colour (); + size = i.size (); + aspect_adjust = i.aspect_adjust (); + effect = i.effect (); + effect_colour = i.effect_colour (); } if (!font_element || font_changed) { @@ -305,55 +304,55 @@ SubtitleAsset::subtitles_as_xml (xmlpp::Element* root, int time_code_rate, Stand } if (!subtitle_element || font_changed || - (last_in != i->in() || - last_out != i->out() || - last_fade_up_time != i->fade_up_time() || - last_fade_down_time != i->fade_down_time() + (last_in != i.in() || + last_out != i.out() || + last_fade_up_time != i.fade_up_time() || + last_fade_down_time != i.fade_down_time() )) { subtitle_element = font_element->add_child ("Subtitle", xmlns); subtitle_element->set_attribute ("SpotNumber", raw_convert<string> (spot_number++)); - subtitle_element->set_attribute ("TimeIn", i->in().rebase(time_code_rate).as_string(standard)); - subtitle_element->set_attribute ("TimeOut", i->out().rebase(time_code_rate).as_string(standard)); + subtitle_element->set_attribute ("TimeIn", i.in().rebase(time_code_rate).as_string(standard)); + subtitle_element->set_attribute ("TimeOut", i.out().rebase(time_code_rate).as_string(standard)); if (standard == SMPTE) { - subtitle_element->set_attribute ("FadeUpTime", i->fade_up_time().rebase(time_code_rate).as_string(standard)); - subtitle_element->set_attribute ("FadeDownTime", i->fade_down_time().rebase(time_code_rate).as_string(standard)); + subtitle_element->set_attribute ("FadeUpTime", i.fade_up_time().rebase(time_code_rate).as_string(standard)); + subtitle_element->set_attribute ("FadeDownTime", i.fade_down_time().rebase(time_code_rate).as_string(standard)); } else { - subtitle_element->set_attribute ("FadeUpTime", raw_convert<string> (i->fade_up_time().as_editable_units(time_code_rate))); - subtitle_element->set_attribute ("FadeDownTime", raw_convert<string> (i->fade_down_time().as_editable_units(time_code_rate))); + subtitle_element->set_attribute ("FadeUpTime", raw_convert<string> (i.fade_up_time().as_editable_units(time_code_rate))); + subtitle_element->set_attribute ("FadeDownTime", raw_convert<string> (i.fade_down_time().as_editable_units(time_code_rate))); } - last_in = i->in (); - last_out = i->out (); - last_fade_up_time = i->fade_up_time (); - last_fade_down_time = i->fade_down_time (); + last_in = i.in (); + last_out = i.out (); + last_fade_up_time = i.fade_up_time (); + last_fade_down_time = i.fade_down_time (); } xmlpp::Element* text = subtitle_element->add_child ("Text", xmlns); - if (i->h_align() != HALIGN_CENTER) { + if (i.h_align() != HALIGN_CENTER) { if (standard == SMPTE) { - text->set_attribute ("Halign", halign_to_string (i->h_align ())); + text->set_attribute ("Halign", halign_to_string (i.h_align ())); } else { - text->set_attribute ("HAlign", halign_to_string (i->h_align ())); + text->set_attribute ("HAlign", halign_to_string (i.h_align ())); } } - if (i->h_position() > ALIGN_EPSILON) { + if (i.h_position() > ALIGN_EPSILON) { if (standard == SMPTE) { - text->set_attribute ("Hposition", raw_convert<string> (i->h_position() * 100, 6)); + text->set_attribute ("Hposition", raw_convert<string> (i.h_position() * 100, 6)); } else { - text->set_attribute ("HPosition", raw_convert<string> (i->h_position() * 100, 6)); + text->set_attribute ("HPosition", raw_convert<string> (i.h_position() * 100, 6)); } } if (standard == SMPTE) { - text->set_attribute ("Valign", valign_to_string (i->v_align())); + text->set_attribute ("Valign", valign_to_string (i.v_align())); } else { - text->set_attribute ("VAlign", valign_to_string (i->v_align())); + text->set_attribute ("VAlign", valign_to_string (i.v_align())); } - if (i->v_position() > ALIGN_EPSILON) { + if (i.v_position() > ALIGN_EPSILON) { if (standard == SMPTE) { - text->set_attribute ("Vposition", raw_convert<string> (i->v_position() * 100, 6)); + text->set_attribute ("Vposition", raw_convert<string> (i.v_position() * 100, 6)); } else { - text->set_attribute ("VPosition", raw_convert<string> (i->v_position() * 100, 6)); + text->set_attribute ("VPosition", raw_convert<string> (i.v_position() * 100, 6)); } } else { if (standard == SMPTE) { @@ -362,7 +361,7 @@ SubtitleAsset::subtitles_as_xml (xmlpp::Element* root, int time_code_rate, Stand text->set_attribute ("VPosition", "0"); } } - text->add_child_text (i->text()); + text->add_child_text (i.text()); } } |
