// Copyright 2021 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CHROME_BROWSER_METRICS_FIRST_WEB_CONTENTS_PROFILER_BASE_H_ #define CHROME_BROWSER_METRICS_FIRST_WEB_CONTENTS_PROFILER_BASE_H_ #include "base/time/time.h" #include "content/public/browser/web_contents_observer.h" namespace content { class WebContents; } class Browser; namespace metrics { // Reasons for which profiling is deemed complete. Logged in UMA (do not re- // order or re-assign). enum class StartupProfilingFinishReason { … }; // Note: Instances of this class self destroy when the first non-empty paint // happens, or when an event prevents it from being recorded. class FirstWebContentsProfilerBase : public content::WebContentsObserver { … }; } // namespace metrics #endif // CHROME_BROWSER_METRICS_FIRST_WEB_CONTENTS_PROFILER_BASE_H_