FrameSample class

Immutable record describing a single measured frame.

Instances are plain value objects: equality covers every field. capturedAt is a real timestamp so a const constructor is not possible; use normal construction and treat instances as immutable afterwards.

Constructors

FrameSample({required int id, required int? frameNumber, required DateTime capturedAt, required Duration buildDuration, required Duration rasterDuration, required Duration totalDuration, required Duration vsyncOverhead, required Duration frameBudget, required String? screen, required String? interactionId})
Creates a frame sample.

Properties

buildDuration → Duration
Time spent executing UI (build/layout/paint) phase work.
final
capturedAt → DateTime
Wall-clock time at which the frame was captured.
final
frameBudget → Duration
Budget this frame was expected to meet (e.g. 16.667ms at 60Hz).
final
frameNumber → int?
Monotonic frame number reported by the engine, when available.
final
hashCode → int
The hash code for this object.
no setteroverride
id → int
Local correlation identifier unique within this PerfScope session.
final
interactionId → String?
Identifier of the interaction that triggered this frame, if any.
final
rasterDuration → Duration
Time spent in the rasterization thread for this frame.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
screen → String?
Name of the screen visible while the frame was rendered, if known.
final
totalDuration → Duration
Total wall time from vsync start to frame completion.
final
vsyncOverhead → Duration
Overhead attributed to scheduling relative to the vsync signal.
final

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.
override