| // Copyright 2018 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. |
| |
| // Next MinVersion: 1 |
| |
| module arc.mojom; |
| |
| // Interface for the mojo service to acquire and release wake locks on behalf of |
| // the instance. On a connection error, all wake locks are released. |
| // |
| // Next method ID: 2 |
| interface WakeLockHost { |
| // Increases the reference count for the CPU wake lock on the host. Acquires |
| // the CPU wake lock when reference count is incremented to one. Returns true |
| // in all cases. |
| AcquirePartialWakeLock@0() => (bool result); |
| |
| // Decreases the reference count for the CPU wake lock on the host. Releases |
| // the wake lock when reference count is decremented to zero. Does nothing |
| // if reference count is zero at the time of call. Returns true in all cases. |
| ReleasePartialWakeLock@1() => (bool result); |
| }; |
| |
| // Next method ID: 1 |
| interface WakeLockInstance { |
| // Establishes full-duplex communication with the host. |
| Init@0(pending_remote<WakeLockHost> host_remote) => (); |
| }; |