A.12 RhythmClarifier Klassenreferenz 257 strongest_right = 0; } if (strongest_right > 0 && wr > weight(strongest_right)) strongest_right = right; } if ( right − left == diff) equal_rests++; wr = symmetric_weight(right % n); // prüfe Regel 3 if (strongest_right > 0 && strongest_right < right && wl − wr > 1) { if (strongest_right − left == diff) equal_rests++; else equal_rests = 1, diff = right−left ; divide_at(strongest_right); if ( right − strongest_right == diff) equal_rests++; left = right ; strongest_right = 0; } // prüfe Regel 6 (4 gleichwertige Pausen in Folge) if (equal_rests == 4) combine_4_rests(attack_pos, right); } } } void combine_4_rests (int left, int right) [protected] Löst eine Folge aus vier aufeinanderfolgenden Pausen auf. Gemäß Stichregel dürfen vier gleichwertige Pausen nicht unmittelbar aufeinander-folgen. Diese Funktion löst eine solche Sequenz, welche sich zwischen den als Pa-rameter angegebenen metrischen Rasterpunkten befinden, auf und verschmilzt die Pause auf der schwersten Einsatzzeit mit der Folgepause. Parameter: left linker Rasterpunkt right rechter Rasterpunkt { int strongest_pos = left; for (int i=left+1; i < right ; i++) if (v_divided[i] && weight(i) > strongest_pos) strongest_pos = i; v_ev[strongest_pos] = 0; c_measure.merge_events(strongest_pos∗c_weighter.beat_dist(), 1); }