chromium/components/viz/service/display/overdraw_tracker.cc

// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "components/viz/service/display/overdraw_tracker.h"

#include <algorithm>
#include <cstddef>
#include <cstdint>
#include <vector>

#include "base/check.h"
#include "base/check_op.h"
#include "base/metrics/histogram_macros.h"
#include "base/time/time.h"
#include "components/viz/common/quads/aggregated_render_pass.h"
#include "components/viz/common/quads/shared_quad_state.h"
#include "components/viz/service/display/aggregated_frame.h"
#include "ui/gfx/geometry/rect.h"
#include "ui/gfx/geometry/rect_conversions.h"
#include "ui/gfx/geometry/transform.h"

namespace viz {
namespace {

// Max number of average overdraw records. It is 30min when interval size
// is 1s and no tests should run longer than 30min.
constexpr size_t kMaxRecords =;

void LogAverageOverdrawCountUMA(float overdraw) {}

}  // namespace

// static
void OverdrawTracker::EstimateAndRecordOverdrawAsUMAMetric(
    const AggregatedFrame* frame) {}

// static
float OverdrawTracker::EstimateOverdraw(const AggregatedFrame* frame) {}

OverdrawTracker::OverdrawTracker(const Settings& settings)
    :{}

OverdrawTracker::~OverdrawTracker() = default;

void OverdrawTracker::EstimateAndRecordOverdraw(const AggregatedFrame* frame,
                                                base::TimeTicks timestamp) {}

OverdrawTracker::OverdrawTimeSeries OverdrawTracker::TakeDataAsTimeSeries()
    const {}

void OverdrawTracker::Reset() {}

void OverdrawTracker::Record(float overdraw, base::TimeTicks timestamp) {}

size_t OverdrawTracker::GetIntervalIndex(base::TimeTicks timestamp) const {}

}  // namespace viz