Let's say you want to schedule something which repeatedly reschedules itself using the absolute value of a standard normal distribution, plus 1.0.  You could say this:


Steppable step = ...
double initialTime = 5.0;
int initialOrdering = 0;

RandomRepeat repeat = new RandomRepeat(step, initialOrdering, false)  // use 'true' if multithreaded
	{
	protected double getNextTime(SimState state, double currentTime)	
		{
		return currentTime + Math.abs(state.random.nextGaussian()) + 1.0;
		}
	};

state.schedule.scheduleOnce(initialTIme, initialOrdering, repeat);



This code was written at 12:50 at night and has not been tested or even tried.  But there is a slight chance it might work right.  Anyway, it's a first draft which uses an abstract superclass and anonymous subclass to get around the issue of a multitude of distribution APIs in sim.util.distribution.  Opinions?

Sean