commit | 659cf723badf9ecf5d9913ee828deaad440e25b0 | [log] [tgz] |
---|---|---|
author | Steve Golton <stevegolton@google.com> | Sat Sep 28 19:23:29 2024 +0100 |
committer | Steve Golton <stevegolton@google.com> | Sat Sep 28 19:23:29 2024 +0100 |
tree | b8331be7639d5f4d8127559d876abf568161f8f1 | |
parent | e5d84c06ea25d80f533430deeed66d3d4ce9bcae [diff] |
ui: Add selection resolver API If we are going to make the selection objects 'fat' i.e. contain various pieces of information related to the entity that has been selected, it's important to reduce the number of places where this selection object is directly set, to reduce duplication and coupling. This CL introduces a new selection resolver system where plugins can register their ability to resolve selection objects on behalf of of other parts of the UI. This is currently limited to SQL table names and ids like so: ``` registerResolver('slice', (id) => {...selection object....}); // ~~~ snip ~~~ resolveSelection('slice', 123); ``` This could be made more generic way in the future, possibly using URIs, but for now, sql table and ID are the only way folks look up selections on other plugins, so this will do for now. Change-Id: I297247629a7a504206b28ccb0a8ecdc72c7cff0c
Perfetto is a production-grade open-source stack for performance instrumentation and trace analysis. It offers services and libraries and for recording system-level and app-level traces, native + java heap profiling, a library for analyzing traces using SQL and a web-based UI to visualize and explore multi-GB traces.
See https://perfetto.dev/docs or the /docs/ directory for documentation.