Skip to content

Commit ab78e21

Browse files
copybara-service[bot]Perfetto Team
andauthored
Copybara import from Chromium: proto and stdlib changes (#5313)
Copybara import from Chromium: proto and stdlib changes - 10349e3f0c01fab94ddcda369146fc91262d3a7a Use typed trace arguments in FrameIntervalDeciderResult t... by Petr Čermák <petrcermak@chromium.org> COPYBARA_IMPORT=Project import generated by Copybara. GitOrigin-RevId: 10349e3f0c01fab94ddcda369146fc91262d3a7a Co-authored-by: Perfetto Team <copybara-servicebot@google.com>
1 parent 0a17625 commit ab78e21

1 file changed

Lines changed: 58 additions & 2 deletions

File tree

protos/third_party/chromium/chrome_track_event.proto

Lines changed: 58 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2855,11 +2855,65 @@ message MemoryDumpProvider {
28552855
optional string name = 1;
28562856
};
28572857

2858+
// Information about `viz::FrameIntervalDecider`.
2859+
message FrameIntervalDecider {
2860+
// LINT.IfChange(FrameIntervalClass)
2861+
enum FrameIntervalClass {
2862+
FRAME_INTERVAL_CLASS_UNSPECIFIED = 0;
2863+
FRAME_INTERVAL_CLASS_BOOST = 1;
2864+
FRAME_INTERVAL_CLASS_DEFAULT = 2;
2865+
}
2866+
// LINT.ThenChange(//components/viz/service/display/frame_interval_matchers.h:FrameIntervalClass)
2867+
2868+
// LINT.IfChange(ResultIntervalType)
2869+
enum ResultIntervalType {
2870+
RESULT_INTERVAL_TYPE_UNSPECIFIED = 0;
2871+
RESULT_INTERVAL_TYPE_EXACT = 1;
2872+
RESULT_INTERVAL_TYPE_AT_LEAST = 2;
2873+
}
2874+
// LINT.ThenChange(//components/viz/service/display/frame_interval_matchers.h:ResultIntervalType)
2875+
2876+
message ResultInterval {
2877+
// The frame interval duration in microseconds.
2878+
optional int64 interval_us = 1;
2879+
optional ResultIntervalType type = 2;
2880+
}
2881+
2882+
// The ideal frame interval the display should use, as decided by the decider.
2883+
message Result {
2884+
oneof result {
2885+
FrameIntervalClass frame_interval_class = 1;
2886+
ResultInterval result_interval = 2;
2887+
}
2888+
}
2889+
2890+
optional Result result = 1;
2891+
2892+
// LINT.IfChange(FrameIntervalMatcherType)
2893+
enum FrameIntervalMatcherType {
2894+
MATCHER_TYPE_UNSPECIFIED = 0;
2895+
MATCHER_TYPE_NONE = 1;
2896+
MATCHER_TYPE_INPUT_BOOST = 2;
2897+
MATCHER_TYPE_ONLY_VIDEO = 3;
2898+
MATCHER_TYPE_VIDEO_CONFERENCE = 4;
2899+
MATCHER_TYPE_ONLY_ANIMATING_IMAGE = 5;
2900+
MATCHER_TYPE_ONLY_SCROLL_BAR_FADE_OUT = 6;
2901+
MATCHER_TYPE_USER_INPUT_BOOST = 7;
2902+
MATCHER_TYPE_SLOW_SCROLL_THROTTLE = 8;
2903+
}
2904+
// LINT.ThenChange(//components/viz/service/display/frame_interval_matchers.h:FrameIntervalMatcherType)
2905+
2906+
// The type of the `viz::FrameIntervalMatcher` on which the decider based
2907+
// its decision.
2908+
optional FrameIntervalMatcherType matcher_type = 2;
2909+
}
2910+
28582911
message ChromeTrackEvent {
2859-
reserved 1045;
2912+
reserved 1045, 1080;
2913+
reserved "chrome_accessibility_win_notify_win_event";
28602914

28612915
// Extension range for Chrome: 1000-1999
2862-
// Next ID: 1080
2916+
// Next ID: 1082
28632917
extend TrackEvent {
28642918
optional ChromeAppState chrome_app_state = 1000;
28652919

@@ -3030,5 +3084,7 @@ message ChromeTrackEvent {
30303084
// Identifies the MemoryDumpProvider object that runs in the scope of a
30313085
// trace event, to identify which objects cause delays in a trace.
30323086
optional MemoryDumpProvider memory_dump_provider = 1079;
3087+
3088+
optional FrameIntervalDecider frame_interval_decider = 1081;
30333089
}
30343090
}

0 commit comments

Comments
 (0)