package musicxmltestsuite.tests.base;
import static com.xenoage.utils.math.Fraction.fr;
import static com.xenoage.zong.core.music.Pitch.pi;
import static com.xenoage.zong.core.music.chord.ChordFactory.chord;
import static com.xenoage.zong.core.position.MP.atElement;
import static com.xenoage.zong.core.position.MP.mp0;
import com.xenoage.utils.math.Fraction;
import com.xenoage.zong.core.Score;
import com.xenoage.zong.core.ScoreFactory;
import com.xenoage.zong.core.music.Staff;
import com.xenoage.zong.core.music.rest.Rest;
import com.xenoage.zong.core.music.time.TimeSignature;
import com.xenoage.zong.core.music.time.TimeType;
import com.xenoage.zong.io.selection.Cursor;
public interface Base46e
extends Base {
@Override default String getFileName() {
return "46e-PickupMeasure-SecondVoiceStartsLater.xml";
}
Staff expectedStaff = getExpectedStaff();
Fraction[] expectedMeasureFilledBeats = { fr(1,4), fr(4,4) };
static Staff getExpectedStaff() {
Score score = ScoreFactory.create1Staff();
Cursor cursor = new Cursor(score, mp0, true);
cursor.write(new TimeSignature(TimeType.timeCommon));
//measure 0, voice 0
cursor.write(chord(pi('C', 0, 5), fr(1, 4)));
//measure 1, voice 0
cursor.setMp(atElement(0, 1, 0, 0));
cursor.write(chord(pi('C', 0, 5), fr(1, 4)));
cursor.write(chord(pi('A', 0, 4), fr(1, 4)));
cursor.write(chord(pi('F', 0, 4), fr(1, 4)));
cursor.write(chord(pi('C', 0, 5), fr(1, 4)));
//measure 1, voice 1
cursor.setMp(atElement(0, 1, 1, 0));
cursor.write(new Rest(fr(1, 4)));
cursor.write(chord(pi('C', 0, 4), fr(1, 4)));
return score.getStaff(0);
}
}