Reviewers: Dan Eble, dak,
https://codereview.appspot.com/547560044/diff/555240043/lily/spring.cc File lily/spring.cc (right): https://codereview.appspot.com/547560044/diff/555240043/lily/spring.cc#newcode119 lily/spring.cc:119: avg_stretch /= static_cast<Real> (springs.size ()); On 2020/02/02 18:51:08, Dan Eble wrote: > This is not an issue with this change, but should this function do something > other than divide by zero when springs is empty? what is the average of an empty set of numbers? the 2 callers use a fallback in case there are not springs. Description: Cast to Real in C++ style throughout Please review this at https://codereview.appspot.com/547560044/ Affected files (+23, -20 lines): M flower/cpu-timer.cc M flower/include/drul-array.hh M lily/bracket.cc M lily/freetype.cc M lily/midi-walker.cc M lily/open-type-font.cc M lily/pango-font.cc M lily/pitch.cc M lily/spring.cc M lily/stem.cc M lily/volta-bracket.cc Index: flower/cpu-timer.cc diff --git a/flower/cpu-timer.cc b/flower/cpu-timer.cc index 1bf93e30840288fb948cc73cdfe2e60c5cf990cc..f05f30308da7c0ea627d8f6a035ef4f5cb8573e6 100644 --- a/flower/cpu-timer.cc +++ b/flower/cpu-timer.cc @@ -45,5 +45,6 @@ Real Cpu_timer::read () { clock_t stop = clock (); - return Real (stop - start_clock_) / Real (CLOCKS_PER_SEC); + return static_cast<Real> (stop - start_clock_) + / static_cast<Real> (CLOCKS_PER_SEC); } Index: flower/include/drul-array.hh diff --git a/flower/include/drul-array.hh b/flower/include/drul-array.hh index 43a01d65003667f521184e10cc7a6bba74795ff3..6144a5fd38f10a7b05d10a5d5b43b311deb25d7d 100644 --- a/flower/include/drul-array.hh +++ b/flower/include/drul-array.hh @@ -73,8 +73,8 @@ scale_drul (Drul_array<T> *dr, T x) inline Real linear_combination (Drul_array<Real> const &d, Real x) { - return ((1.0 - x) * Real (d.at (LEFT)) - + (x + 1.0) * Real (d.at (RIGHT))) * 0.5; + return ((1.0 - x) * static_cast<Real> (d.at (LEFT)) + + (x + 1.0) * static_cast<Real> (d.at (RIGHT))) * 0.5; } #endif /* DRUL_ARRAY_HH */ Index: lily/bracket.cc diff --git a/lily/bracket.cc b/lily/bracket.cc index 7c6a5f6691beca5a6d45d90a9809133147290856..02bce08c51a94a5958fcd4c25fb0ab2d3e785271 100644 --- a/lily/bracket.cc +++ b/lily/bracket.cc @@ -104,7 +104,7 @@ Bracket::make_axis_constrained_bracket (Grob *me, Real length, Axis a, Interval (0, 0)); // Make sure that it points in the correct direction: - scale_drul (&edge_height, Real (-dir)); + scale_drul (&edge_height, static_cast<Real> (-dir)); Offset start; start[a] = length; Index: lily/freetype.cc diff --git a/lily/freetype.cc b/lily/freetype.cc index 339c42128450bfdf569b5ff9b01507e8ceed3abb..2c4258960d887393e5ffb5f3a15b62e968b6f34a 100644 --- a/lily/freetype.cc +++ b/lily/freetype.cc @@ -44,8 +44,9 @@ ly_FT_get_unscaled_indexed_char_dimensions (FT_Face const &face, size_t signed_i FT_Pos vb = m.horiBearingY; // is this viable for all grobs? - return Box (Interval (Real (hb), Real (hb + m.width)), - Interval (Real (vb - m.height), Real (vb))); + return Box ( + Interval (static_cast<Real> (hb), static_cast<Real> (hb + m.width)), + Interval (static_cast<Real> (vb - m.height), static_cast<Real> (vb))); } SCM Index: lily/midi-walker.cc diff --git a/lily/midi-walker.cc b/lily/midi-walker.cc index 912ee265eba03d1698ad7a4bdb8854b48567d880..033116fb1a531b9f7e075940c5e9c4a32ed6652f 100644 --- a/lily/midi-walker.cc +++ b/lily/midi-walker.cc @@ -87,8 +87,9 @@ Midi_walker::do_start_note (Midi_note *note) Audio_item *ptr = items_[index_]; assert (note->audio_ == ptr); int now_ticks = ptr->audio_column_->ticks (); - int stop_ticks = int (moment_to_real (note->audio_->length_mom_) * - Real (384 * 4)) + now_ticks; + int stop_ticks = int (moment_to_real (note->audio_->length_mom_) + * static_cast<Real> (384 * 4)) + + now_ticks; for (vsize i = 0; i < stop_note_queue.size (); i++) { /* if this pitch already in queue, and is not already ignored */ Index: lily/open-type-font.cc diff --git a/lily/open-type-font.cc b/lily/open-type-font.cc index dfd21e48c71791aba1e78b83ff90cc2a1887d2e0..e4b25e39e128206e0e4cd15e046e1f02e521cb0e 100644 --- a/lily/open-type-font.cc +++ b/lily/open-type-font.cc @@ -350,7 +350,7 @@ Open_type_font::get_indexed_char_dimensions (size_t signed_idx) const Box b = get_unscaled_indexed_char_dimensions (signed_idx); - b.scale (design_size () / Real (face_->units_per_EM)); + b.scale (design_size () / static_cast<Real> (face_->units_per_EM)); return b; } @@ -420,7 +420,7 @@ Open_type_font::design_size () const quickly. --hwn. */ scm_from_unsigned_integer (1)); - return scm_to_double (entry) * Real (point_constant); + return scm_to_double (entry) * static_cast<Real> (point_constant); } SCM Index: lily/pango-font.cc diff --git a/lily/pango-font.cc b/lily/pango-font.cc index cd00b26f80273c02d7474bc72f82edf1d2f3dfc7..c99e0f92ed421057fdd4948bb8becc26f3e320a4 100644 --- a/lily/pango-font.cc +++ b/lily/pango-font.cc @@ -71,7 +71,8 @@ Pango_font::Pango_font (PangoFT2FontMap *fontmap, // --hwn output_scale_ = output_scale; scale_ = INCH_TO_BP - / (Real (PANGO_SCALE) * Real (PANGO_RESOLUTION) * output_scale); + / (static_cast<Real> (PANGO_SCALE) + * static_cast<Real> (PANGO_RESOLUTION) * output_scale); // ugh. Should make this configurable. pango_context_set_language (context_, pango_language_from_string ("en_US")); @@ -333,7 +334,7 @@ Pango_font::pango_item_string_stencil (PangoGlyphItem const *glyph_item) const pgs = 0; PangoFontDescription *descr = pango_font_describe (pa->font); Real size = pango_font_description_get_size (descr) - / (Real (PANGO_SCALE)); + / (static_cast<Real> (PANGO_SCALE)); if (ps_name_str0.empty ()) warning (_f ("no PostScript font name for font `%s'", file_name)); Index: lily/pitch.cc diff --git a/lily/pitch.cc b/lily/pitch.cc index bf44c00839431e4f85b75ddb542f2558131ccbbe..9c18449c0f4c1c61c3a3a27776dbf8697ee601a2 100644 --- a/lily/pitch.cc +++ b/lily/pitch.cc @@ -158,7 +158,7 @@ Pitch::to_string () const int n = (notename_ + 2) % scale_->step_count (); string s (1, static_cast<char> (n + 'a')); Rational qtones = alteration_ * Rational (4, 1); - int qt = int (rint (Real (qtones))); + int qt = int (rint (static_cast<Real> (qtones))); s += string (accname[qt + 4]); if (octave_ >= 0) Index: lily/spring.cc diff --git a/lily/spring.cc b/lily/spring.cc index 6af93c3e59ff520590f7e0b4017f35758edbbd2d..7f79a9f88563997f6027a2154cf98b22ece727c0 100644 --- a/lily/spring.cc +++ b/lily/spring.cc @@ -116,9 +116,9 @@ merge_springs (vector<Spring> const &springs) min_distance = std::max (springs[i].min_distance (), min_distance); } - avg_stretch /= Real (springs.size ()); - avg_compress /= Real (springs.size ()); - avg_distance /= Real (springs.size ()); + avg_stretch /= static_cast<Real> (springs.size ()); + avg_compress /= static_cast<Real> (springs.size ()); + avg_distance /= static_cast<Real> (springs.size ()); avg_distance = std::max (min_distance + 0.3, avg_distance); Spring ret = Spring (avg_distance, min_distance); @@ -231,4 +231,3 @@ Spring::length (Real f) const // and we need to make sure that we return min_distance_. return std::max (min_distance_, distance_ + force * inv_k); } - Index: lily/stem.cc diff --git a/lily/stem.cc b/lily/stem.cc index 7f1983bc641f0fc969d62fbbecfc8e1dea870466..69cd4476ca47dc890552a0c23e2507ba6c9f090e 100644 --- a/lily/stem.cc +++ b/lily/stem.cc @@ -556,7 +556,8 @@ Stem::calc_positioning_done (SCM smob) heads[i]->translate_axis (amount, X_AXIS); } bool parity = true; - Real lastpos = Real (Staff_symbol_referencer::get_position (heads[0])); + Real lastpos + = static_cast<Real> (Staff_symbol_referencer::get_position (heads[0])); int threshold = robust_scm2int (me->get_property ("note-collision-threshold"), 1); for (vsize i = 1; i < heads.size (); i++) { Index: lily/volta-bracket.cc diff --git a/lily/volta-bracket.cc b/lily/volta-bracket.cc index dd752f8014daed8692b2a089ce9db2bab44f49d7..584241997e022b515b31ed0fae5947140b5bb0dd 100644 --- a/lily/volta-bracket.cc +++ b/lily/volta-bracket.cc @@ -88,7 +88,7 @@ Volta_bracket_interface::print (SCM smob) Drul_array<Real> shorten = robust_scm2interval (me->get_property ("shorten-pair"), Interval (0, 0)); - scale_drul (&edge_height, - Real (get_grob_direction (me))); + scale_drul (&edge_height, -static_cast<Real> (get_grob_direction (me))); Interval empty; Offset start; @@ -173,4 +173,3 @@ ADD_INTERFACE (Volta_bracket_interface, "shorten-pair " "thickness " ); -