From ab927e23e7cd32d628e0bcc662676eb9c6893c2f Mon Sep 17 00:00:00 2001 From: Chinmay Garde Date: Mon, 28 Sep 2015 12:20:28 -0700 Subject: [PATCH 1/3] Allow displaying compositor statistics from Dart --- sky/compositor/BUILD.gn | 2 + sky/compositor/compositor_options.cc | 9 ++++ sky/compositor/compositor_options.h | 2 + sky/compositor/paint_context.cc | 30 -------------- sky/compositor/paint_context.h | 12 +++--- sky/compositor/statistics_layer.cc | 43 ++++++++++++++++++++ sky/compositor/statistics_layer.h | 30 ++++++++++++++ sky/engine/core/compositing/SceneBuilder.cpp | 14 ++++++- sky/engine/core/compositing/SceneBuilder.h | 2 + sky/engine/core/compositing/SceneBuilder.idl | 1 + 10 files changed, 107 insertions(+), 38 deletions(-) create mode 100644 sky/compositor/statistics_layer.cc create mode 100644 sky/compositor/statistics_layer.h diff --git a/sky/compositor/BUILD.gn b/sky/compositor/BUILD.gn index e5826886169..715fd759c73 100644 --- a/sky/compositor/BUILD.gn +++ b/sky/compositor/BUILD.gn @@ -32,6 +32,8 @@ source_set("compositor") { "picture_layer.h", "picture_serializer.cc", "picture_serializer.h", + "statistics_layer.cc", + "statistics_layer.h", "transform_layer.cc", "transform_layer.h", ] diff --git a/sky/compositor/compositor_options.cc b/sky/compositor/compositor_options.cc index 8317da170cd..28e6aab4a1d 100644 --- a/sky/compositor/compositor_options.cc +++ b/sky/compositor/compositor_options.cc @@ -13,6 +13,15 @@ CompositorOptions::CompositorOptions() { options_.resize(static_cast(Option::TerminationSentinel), false); } +CompositorOptions::CompositorOptions(uint64_t mask) : CompositorOptions() { + OptionType sentinel = static_cast(Option::TerminationSentinel); + for (OptionType i = 0; i < sentinel; i++) { + if ((1 << i) & mask) { + setEnabled(static_cast