Class Clock
-
- All Implemented Interfaces:
public final class ClockA simple class for timing of animations and things. Literally a delta function.
PolyUI internally uses nanoseconds as the time unit. There are a few reasons for this:
animations will be smoother as frames are usually shorter than 1ms, around 0.007ms. This means that the delta will be a decimal, which is not possible with longs, so some accuracy is lost with milliseconds.
System.nanoTime (the function we use to measure time) ignores changes to the system clock, so if the user changes their clock PolyUI won't crash or go very crazy because of a negative time.
9,223,372,036,854,775,808 is max for a long, so the program can run for 2,562,047.78802 hours, or 106,751.991167 days, or 292.471 years. So we can use these.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public abstract classClock.ExecutorCreate a new Executor.
public final classClock.FixedTimeExecutorCreate a new FixedTimeExecutor.
public final classClock.UntilExecutorAn executor that will do its function until the given amount of time has passed.
public final classClock.ConditionalExecutorAn executor that will do its function until the given condition is true.
public final classClock.AfterExecutorAn executor that will do its function after the given amount of time has passed.
-
Constructor Summary
Constructors Constructor Description Clock()
-