chromium/third_party/blink/renderer/core/timing/measure_memory/local_web_memory_measurer.h

// 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 THIRD_PARTY_BLINK_RENDERER_CORE_TIMING_MEASURE_MEMORY_LOCAL_WEB_MEMORY_MEASURER_H_
#define THIRD_PARTY_BLINK_RENDERER_CORE_TIMING_MEASURE_MEMORY_LOCAL_WEB_MEMORY_MEASURER_H_

#include "components/performance_manager/public/mojom/web_memory.mojom-blink.h"

#include "third_party/blink/renderer/platform/heap/persistent.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
#include "v8/include/v8.h"

namespace blink {

class MeasureMemoryController;

// Performs a memory measurement of a V8 isolate containing
// a single context. It is a much simplified version of
// performance_manager::v8_memory::WebMemoryMeasurer and does
// not require aggregation of multiple nodes.
//
// This is used in service and shared workers.
class LocalWebMemoryMeasurer : public v8::MeasureMemoryDelegate {};

}  // namespace blink

#endif  // THIRD_PARTY_BLINK_RENDERER_CORE_TIMING_MEASURE_MEMORY_LOCAL_WEB_MEMORY_MEASURER_H_