chromium/content/browser/tracing/trace_report/trace_report_internals_ui.h

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

#ifndef CONTENT_BROWSER_TRACING_TRACE_REPORT_TRACE_REPORT_INTERNALS_UI_H_
#define CONTENT_BROWSER_TRACING_TRACE_REPORT_TRACE_REPORT_INTERNALS_UI_H_

#include "content/browser/tracing/trace_report/trace_report.mojom.h"
#include "content/public/browser/web_ui_controller.h"
#include "content/public/browser/webui_config.h"
#include "content/public/common/url_constants.h"

namespace content {

class RenderFrameHost;
class TraceReportHandler;
class TraceReportInternalsUI;

// WebUIConfig for the chrome://traces page.
class TraceReportInternalsUIConfig
    : public DefaultWebUIConfig<TraceReportInternalsUI> {};

// WebUIController for the chrome://traces page.
class CONTENT_EXPORT TraceReportInternalsUI
    : public WebUIController,
      public trace_report::mojom::TraceReportHandlerFactory {};

}  // namespace content

#endif  // CONTENT_BROWSER_TRACING_TRACE_REPORT_TRACE_REPORT_INTERNALS_UI_H_