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