package micromod;
/**
This class represents the sequence information contained in a
ProTracker style music module. S3M and XM all have ProTracker-style
sequences.
*/
public class Sequence {
public int[] patternOrder = new int[128];
public Pattern[] patterns = new Pattern[128];
public int numberOfChannels, songLengthPatterns;
public int restartPosition, numberOfPatterns;
public int defaultBPM, defaultTempo;
/** Get the number of channels, so the Mixer can calibrate itself */
public int getNumberOfChannels() {
return numberOfChannels;
}
/** Get the song length, in patterns. */
public int getSongLength() {
return songLengthPatterns;
}
public static class Pattern {
public int[][] instrument;
public int[][] period;
public int[][] volColumn;
public int[][] effectCommand;
public int[][] effectValue;
public Pattern( int numChannels ) {
instrument = new int[64][numChannels];
period = new int[64][numChannels];
volColumn = new int[64][numChannels];
effectCommand = new int[64][numChannels];
effectValue = new int[64][numChannels];
}
}
}