-MAKE_SCHEME_CALLBACK (Beam, quanting, 2);
-SCM
-Beam::quanting (SCM smob, SCM posns)
-{
- Grob *me = unsmob_grob (smob);
-
- Beam_quant_parameters parameters;
- parameters.fill (me);
-
- Real yl = scm_to_double (scm_car (posns));
- Real yr = scm_to_double (scm_cdr (posns));
-
- /*
- Calculations are relative to a unit-scaled staff, i.e. the quants are
- divided by the current staff_space.
-
- */
- Real ss = Staff_symbol_referencer::staff_space (me);
- Real thickness = Beam::get_thickness (me) / ss;
- Real slt = Staff_symbol_referencer::line_thickness (me) / ss;
-
- Real dy_mus = robust_scm2double (me->get_property ("least-squares-dy"), 0);
- Real straddle = 0.0;
- Real sit = (thickness - slt) / 2;
- Real inter = 0.5;
- Real hang = 1.0 - (thickness - slt) / 2;
- Real quants [] = {straddle, sit, inter, hang };
-
- int num_quants = int (sizeof (quants) / sizeof (Real));
- vector<Real> quantsl;
- vector<Real> quantsr;
-
- /*
- going to REGION_SIZE == 2, yields another 0.6 second with
- wtk1-fugue2.
-
-
- (result indexes between 70 and 575) ? --hwn.
-
- */
-
- /*
- Do stem computations. These depend on YL and YR linearly, so we can
- precompute for every stem 2 factors.
- */
- vector<Grob*> stems
- = extract_grob_array (me, "stems");
- vector<Stem_info> stem_infos;
- vector<Real> base_lengths;
- vector<Real> stem_xposns;
+// This is a temporary hack to see how much we can gain by using a
+// priority queue on the beams to score.
+static int score_count = 0;
+LY_DEFINE (ly_beam_score_count, "ly:beam-score-count", 0, 0, 0,
+ (),
+ "count number of beam scores.") {
+ return scm_from_int (score_count);
+}