chromium/third_party/blink/renderer/controller/memory_usage_monitor.h

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

#include "base/observer_list.h"
#include "base/timer/timer.h"
#include "third_party/blink/renderer/controller/controller_export.h"
#include "third_party/blink/renderer/platform/timer.h"
#include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"

namespace base {
class SingleThreadTaskRunner;
class TickClock;
}  // namespace base

namespace blink {

// nan means data not available.
struct MemoryUsage {};

// Periodically checks the memory usage and notifies its observers. Monitoring
// automatically starts/stops depending on whether an observer exists.
class CONTROLLER_EXPORT MemoryUsageMonitor {};

}  // namespace blink

#endif  // THIRD_PARTY_BLINK_RENDERER_CONTROLLER_MEMORY_USAGE_MONITOR_H_