SystemTiming class final
A reusable, read-only timing record for a single (system, schedule) pair, accumulated across frames.
Timing data for one system and schedule.
The counters are read-only to outside code: the profiler is exposed as a
@Resource(), so only it (in this library) may mutate the record.
Constructors
- SystemTiming({required SystemLabel label, required String debugName, required ScheduleLabel schedule})
Properties
- average → Duration
-
Mean time per run (zero before the first run).
no setter
- debugName → String
-
A short human-readable name for diagnostics (the declared system name).
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- label → SystemLabel
-
The system's stable identity.
final
- lastFrame → int
-
The frame number of the most recent run (-1 until first run).
no setter
- latest → Duration
-
Time spent in the most recent run.
no setter
- latestMicros → int
-
Time spent in the most recent run, in microseconds.
no setter
- maximum → Duration
-
The slowest single run observed.
no setter
- maxMicros → int
-
The slowest single run observed, in microseconds.
no setter
- runs → int
-
Number of times the system has run.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- schedule → ScheduleLabel
-
The schedule this system runs in.
final
- total → Duration
-
Total time spent in the system.
no setter
- totalMicros → int
-
Total time spent in the system, in microseconds.
no setter
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited