29bool fail(std::string &error,
const char *message)
47 return fail(error,
"initial state is not STOPPED");
52 return fail(error,
"play() did not enter RUNNING");
57 return fail(error,
"pause() did not enter PAUSED");
62 return fail(error,
"stop() did not enter STOPPED");
67 return fail(error,
"0.25x timing is incorrect");
72 return fail(error,
"0.5x timing is incorrect");
77 return fail(error,
"1x timing is incorrect");
82 return fail(error,
"2x timing is incorrect");
87 return fail(error,
"4x timing is incorrect");
92 return fail(error,
"speed lower clamp failed");
97 return fail(error,
"speed upper clamp failed");
Implements the Simulation Transport component.
int timerIntervalMs(int baseIntervalMs) const noexcept
Returns timer interval ms.
int stepsPerTick() const noexcept
Advances the simulation state by one s per tick.
void pause() noexcept
Carries out pause.
void setSpeedFactor(double factor) noexcept
Sets speed factor.
void play() noexcept
Carries out play.
SimulationTransportState state() const noexcept
Carries out state.
double speedFactor() const noexcept
Carries out speed factor.
void stop() noexcept
Carries out stop.
bool runSimulationTransportTests(std::string &error)
Runs simulation transport tests.
Declares the simulationtransport physics/numerical component used by QPE experiments.
Declares regression and invariant tests for simulationtransport tests.