// Copyright 2019 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CC_METRICS_FRAME_SEQUENCE_TRACKER_H_ #define CC_METRICS_FRAME_SEQUENCE_TRACKER_H_ #include <deque> #include <memory> #include <sstream> #include "base/containers/circular_deque.h" #include "base/containers/flat_set.h" #include "base/time/time.h" #include "cc/cc_export.h" #include "cc/metrics/frame_sequence_metrics.h" namespace gfx { struct PresentationFeedback; } namespace viz { struct BeginFrameArgs; struct BeginFrameId; } // namespace viz namespace cc { // Tracks a sequence of frames to determine the throughput. It tracks this by // tracking the vsync sequence-numbers (from |BeginFrameArgs::sequence_number|), // and the presentation-timestamps (from |gfx::PresentationFeedback|). // This object should be created through // FrameSequenceTrackerCollection::CreateTracker() API. class CC_EXPORT FrameSequenceTracker { … }; } // namespace cc #endif // CC_METRICS_FRAME_SEQUENCE_TRACKER_H_