private Vector<MidiEvent> merge_events( Vector<MidiEvent> x0, Vector<MidiEvent> y0 )
{
Vector<MidiEvent> ret = new Vector<MidiEvent>();
for ( int i = 0; i < x0.size(); i++ ) {
ret.add( x0.get( i ) );
}
for ( int i = 0; i < y0.size(); i++ ) {
ret.add( y0.get( i ) );
}
boolean changed = true;
while ( changed ) {
changed = false;
for ( int i = 0; i < ret.size() - 1; i++ ) {
if ( ret.get( i ).CompareTo( ret.get( i + 1 ) ) > 0 ) {
MidiEvent m = ret.get( i );
ret.set( i, ret.get( i + 1 ) );
ret.set( i + 1, m );
changed = true;
}
}
}
return ret;
}
}