1
package org.herac.tuxguitar.player.base;
3
import org.herac.tuxguitar.song.models.TGTimeSignature;
5
public abstract class MidiSequenceHandler {
9
private int metronomeTrack;
11
public MidiSequenceHandler(int tracks){
14
this.metronomeTrack = (tracks - 1);
17
public int getInfoTrack() {
18
return this.infoTrack;
21
public int getMetronomeTrack() {
22
return this.metronomeTrack;
25
public int getTracks() {
29
public abstract void addNoteOn(long tick,int track,int channel,int note,int velocity);
31
public abstract void addNoteOff(long tick,int track,int channel,int note,int velocity);
33
public abstract void addControlChange(long tick,int track,int channel,int controller,int value);
35
public abstract void addProgramChange(long tick,int track,int channel,int instrument);
37
public abstract void addPitchBend(long tick,int track,int channel,int value);
39
public abstract void addTempoInUSQ(long tick,int track,int usq);
41
public abstract void addTimeSignature(long tick,int track,TGTimeSignature ts);
43
public abstract void notifyFinish();