/**
*
* @param nrr The restrictor to use for note generation.
* @param lowPitchChange The smallest allowed step for pitch changes.
* @param highPitchChange The largest allowed step for pitch changes.
* @param lowLengthStep The smallest allowed step for duration changes.
* @param highLengthStep The largest allowed step for duration changes.
*/
public BrownNoteGenerator(
NoteRangeRestrictor nrr,
int lowPitchChange, int highPitchChange,
int lowLengthStep, int highLengthStep
)
{
restrictor = nrr;
lowPC = lowPitchChange;
highPC = highPitchChange;
lowLC = lowLengthStep;
highLC = highLengthStep;
// Set first note to midpoint of ranges
nextPitchIndex = (int) ( restrictor.GetNumPitches() / 2 );
nextLengthIndex = (int) ( restrictor.GetNumDurations() / 2 );
}