blob: 3767566c86fc0a5f857edccc91a7e8b7c7bd5ab7 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module resource_coordinator.mojom;
import "coordination_unit.mojom";
import "mojo/common/process_id.mojom";
import "mojo/common/time.mojom";
struct PageInfo {
int64 ukm_source_id;
bool is_visible;
mojo.common.mojom.TimeDelta time_since_last_navigation;
mojo.common.mojom.TimeDelta time_since_last_visibility_change;
};
struct ProcessInfo {
mojo.common.mojom.ProcessId pid;
array<PageInfo> page_infos;
mojo.common.mojom.Time? launch_time;
};
interface CoordinationUnitIntrospector {
// Returns an array that describes the current topology of Chrome, with
// respect to the relationship between processes and hosted frame URLs.
GetProcessToURLMap() => (array<ProcessInfo> process_infos);
};