Class AdjustableNumberGenerator<T extends Number>

java.lang.Object
org.uncommons.maths.number.AdjustableNumberGenerator<T>
Type Parameters:
T - The type of number generated by this number generator.
All Implemented Interfaces:
NumberGenerator<T>

public class AdjustableNumberGenerator<T extends Number> extends Object implements NumberGenerator<T>
Implementation of NumberGenerator that works similarly to ConstantGenerator but allows the returned value to be changed after instantiation. The most useful application of this type of number generator is to permit runtime re-configuration of objects that rely on NumberGenerators for their parameters. This can be achieved by creating UI components (e.g. sliders and spinners) that invoke setValue(Number) when their state changes.
  • Field Details

  • Constructor Details

    • AdjustableNumberGenerator

      public AdjustableNumberGenerator(T value)
      Parameters:
      value - The initial value returned by all invocations of nextValue() (until it is modified by a call to setValue(Number).
  • Method Details

    • setValue

      public void setValue(T value)
      Change the value that is returned by this generator.
      Parameters:
      value - The new value to return.
    • nextValue

      public T nextValue()
      Specified by:
      nextValue in interface NumberGenerator<T extends Number>
      Returns:
      The next value from the generator.