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