| // Copyright 2016 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 arc.mojom; |
| |
| // Describes a boot progress event. |
| struct BootProgressEvent { |
| // Name of the boot progress event in Android. Currently there are |
| // 11 boot progress events found in Android source repository: |
| // system/core/logcat/event.logtags |
| // frameworks/base/services/core/java/com/android/server/am/ |
| // EventLogTags.logtags |
| // frameworks/base/services/core/java/com/android/server/ |
| // EventLogTags.logtags |
| string event; |
| |
| // Timestamp of the event in uptime obtained in ARC. The uptime |
| // is from clock source MONOTONIC_CLOCK since Chrome OS boots up. |
| // Therefore, we need to calibrate the correct elapsed time of the |
| // event by comparing the uptime with the ARC start time from |
| // the same clock source MONOTONIC_CLOCK in session manager. |
| int64 uptimeMillis; |
| }; |
| |
| interface MetricsHost { |
| // Report boot progress events from ARC instance. |
| ReportBootProgress@0(array<BootProgressEvent> events); |
| }; |
| |
| interface MetricsInstance { |
| Init@0(MetricsHost host_ptr); |
| }; |