chromium/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.h

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

#ifndef SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_MEMORY_INSTRUMENTATION_MEMORY_INSTRUMENTATION_H_
#define SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_MEMORY_INSTRUMENTATION_MEMORY_INSTRUMENTATION_H_

#include "base/component_export.h"
#include "base/functional/callback_forward.h"
#include "base/trace_event/memory_dump_request_args.h"
#include "mojo/public/cpp/bindings/shared_remote.h"
#include "services/resource_coordinator/public/cpp/memory_instrumentation/global_memory_dump.h"
#include "services/resource_coordinator/public/mojom/memory_instrumentation/memory_instrumentation.mojom.h"

namespace memory_instrumentation {

// This a public API for the memory-infra service and allows any
// sequence/process to request memory snapshots. This is a convenience wrapper
// around the memory_instrumentation service and hides away the complexity
// associated with having to deal with it (e.g., maintaining service
// connections, bindings, handling timeouts).
class COMPONENT_EXPORT(RESOURCE_COORDINATOR_PUBLIC_MEMORY_INSTRUMENTATION)
    MemoryInstrumentation {};

}  // namespace memory_instrumentation

#endif  // SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_MEMORY_INSTRUMENTATION_MEMORY_INSTRUMENTATION_H_