Motion Master 6.0.0-alpha.50
Next-generation motion control software
Loading...
Searching...
No Matches
GameLoopHealth Struct Reference

Snapshot of game-loop real-time health for the GET /api/game-loop diagnostic endpoint. All fields are read with relaxed ordering — for monitoring, not synchronisation. More...

#include <game_loop.h>

Public Attributes

uint64_t periodUs = 0
 Configured target period (µs).
 
double targetHz = 0.0
 Target rate = 1e6 / periodUs.
 
double achievedHz = 0.0
 Cumulative avg = executedCycles / uptime; 0 pre-run.
 
uint64_t executedCycles = 0
 Loop iterations run since run().
 
uint64_t skippedCycles = 0
 Cycles skipped to catch up since run().
 
uint64_t lastExecNs = 0
 Task-exec time of the most recent cycle (ns).
 
uint64_t maxExecNs = 0
 Worst task-exec time since run() (ns).
 
uint64_t avgExecNs = 0
 Mean task-exec time since run() (ns).
 
bool schedFifo = false
 SCHED_FIFO acquired (false on Windows / failure).
 
bool memLocked = false
 mlockall ok (Linux only; false elsewhere).
 
uint64_t timestampUs = 0
 Server stamp (epoch µs) for exact client Δt.
 

Detailed Description

Snapshot of game-loop real-time health for the GET /api/game-loop diagnostic endpoint. All fields are read with relaxed ordering — for monitoring, not synchronisation.

Member Data Documentation

◆ achievedHz

double GameLoopHealth::achievedHz = 0.0

Cumulative avg = executedCycles / uptime; 0 pre-run.

◆ avgExecNs

uint64_t GameLoopHealth::avgExecNs = 0

Mean task-exec time since run() (ns).

◆ executedCycles

uint64_t GameLoopHealth::executedCycles = 0

Loop iterations run since run().

◆ lastExecNs

uint64_t GameLoopHealth::lastExecNs = 0

Task-exec time of the most recent cycle (ns).

◆ maxExecNs

uint64_t GameLoopHealth::maxExecNs = 0

Worst task-exec time since run() (ns).

◆ memLocked

bool GameLoopHealth::memLocked = false

mlockall ok (Linux only; false elsewhere).

◆ periodUs

uint64_t GameLoopHealth::periodUs = 0

Configured target period (µs).

◆ schedFifo

bool GameLoopHealth::schedFifo = false

SCHED_FIFO acquired (false on Windows / failure).

◆ skippedCycles

uint64_t GameLoopHealth::skippedCycles = 0

Cycles skipped to catch up since run().

◆ targetHz

double GameLoopHealth::targetHz = 0.0

Target rate = 1e6 / periodUs.

◆ timestampUs

uint64_t GameLoopHealth::timestampUs = 0

Server stamp (epoch µs) for exact client Δt.


The documentation for this struct was generated from the following file: