SceneBuilderRecorder class abstract
A recorder for benchmarking interactions with the engine without the framework by directly exercising SceneBuilder.
To implement a benchmark, extend this class and implement onDrawFrame.
Example:
class BenchDrawCircle extends SceneBuilderRecorder {
BenchDrawCircle() : super(name: benchmarkName);
static const String benchmarkName = 'draw_circle';
@override
void onDrawFrame(SceneBuilder sceneBuilder) {
final PictureRecorder pictureRecorder = PictureRecorder();
final Canvas canvas = Canvas(pictureRecorder);
final Paint paint = Paint()..color = const Color.fromARGB(255, 255, 0, 0);
final Size windowSize = window.physicalSize;
canvas.drawCircle(windowSize.center(Offset.zero), 50.0, paint);
final Picture picture = pictureRecorder.endRecording();
sceneBuilder.addPicture(picture);
}
}
Constructors
- SceneBuilderRecorder({required String name})
- Creates a SceneBuilder benchmark recorder.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isTracingEnabled → bool
-
Whether this recorder requires tracing using Chrome's DevTools Protocol's
"Tracing" API.
finalinherited
- name → String
-
The name of the benchmark.
finalinherited
- profile → Profile
-
Returns the recorded profile.
no setteroverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onBeginFrame(
) → void -
Called from
Window.onBeginFrame
. -
onDrawFrame(
SceneBuilder sceneBuilder) → void - Called on every frame.
-
run(
) → Future< Profile> -
The implementation of the benchmark that will produce a Profile.
override
-
setUpAll(
) → Future< void> -
Called once before all runs of this benchmark recorder.
inherited
-
shouldContinue(
) → bool -
Whether the benchmark should continue running.
inherited
-
tearDownAll(
) → Future< void> -
Called once after all runs of this benchmark recorder.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited