[go: nahoru, domu]

[Refactor] Break frame_sequence_tracker.h into 3 files

The frame_sequence_tracker.h file has 3 classes in it:
1. FrameSequenceMetrics: this class keeps track of necessary info to
   report throughput metrics.
2. FrameSequenceTracker: this class owns a FrameSequenceMetrics
   object. It tracks various frame productions and record these info
   in the FrameSequenceMetrics object.
3. FrameSequenceTrackerCollection: this class contains a set of
   FrameSequenceTrackers.

Other high level classes like LayerTreeHostImpl just talk to
FrameSequenceTrackerCollection.

This CL breaks the file into 3 classes, to make it more obvious.
Basically, frame_sequence_metrics.h is the lowest level and contains
all fundamental types and operations.

Bug: None
Change-Id: I94ac5902ab9f4b6e5857b8c6878cbed2916fb5b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2155213
Reviewed-by: Yi Gu <yigu@chromium.org>
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: vmpstr <vmpstr@chromium.org>
Commit-Queue: Xida Chen <xidachen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#760524}
diff --git a/cc/BUILD.gn b/cc/BUILD.gn
index 2f8df2e..5634a507 100644
--- a/cc/BUILD.gn
+++ b/cc/BUILD.gn
@@ -162,8 +162,12 @@
     "metrics/event_metrics.h",
     "metrics/events_metrics_manager.cc",
     "metrics/events_metrics_manager.h",
+    "metrics/frame_sequence_metrics.cc",
+    "metrics/frame_sequence_metrics.h",
     "metrics/frame_sequence_tracker.cc",
     "metrics/frame_sequence_tracker.h",
+    "metrics/frame_sequence_tracker_collection.cc",
+    "metrics/frame_sequence_tracker_collection.h",
     "metrics/latency_ukm_reporter.cc",
     "metrics/latency_ukm_reporter.h",
     "metrics/throughput_ukm_reporter.cc",