summaryrefslogtreecommitdiff
path: root/chromium/components/arc/common/arc_bridge.mojom
blob: c30c3ae27490615e914340c10f0d1dd11f472e73 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
// Copyright 2015 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;

import "accessibility_helper.mojom";
import "app.mojom";
import "audio.mojom";
import "auth.mojom";
import "bluetooth.mojom";
import "boot_phase_monitor.mojom";
import "clipboard.mojom";
import "crash_collector.mojom";
import "enterprise_reporting.mojom";
import "file_system.mojom";
import "ime.mojom";
import "intent_helper.mojom";
import "kiosk.mojom";
import "lock_screen.mojom";
import "metrics.mojom";
import "net.mojom";
import "notifications.mojom";
import "obb_mounter.mojom";
import "policy.mojom";
import "power.mojom";
import "print.mojom";
import "process.mojom";
import "storage_manager.mojom";
import "tracing.mojom";
import "tts.mojom";
import "video.mojom";
import "voice_interaction_arc_home.mojom";
import "voice_interaction_framework.mojom";
import "volume_mounter.mojom";
import "wallpaper.mojom";

// Next MinVersion: 30
// Deprecated method IDs: 101, 105
// Next method ID: 135
interface ArcBridgeHost {
  // Keep the entries alphabetical. In order to do so without breaking
  // compatibility with the ARC instance, explicitly assign each interface a
  // unique ordinal.

  // Notifies Chrome that the AccessibilityHelperInstance interface is ready.
  [MinVersion=21] OnAccessibilityHelperInstanceReady@127(
      AccessibilityHelperInstance instance_ptr);

  // Notifies Chrome that the AppInstance interface is ready.
  OnAppInstanceReady@100(AppInstance instance_ptr);

  // Notifies Chrome that the AudioInstance interface is ready.
  [MinVersion=8] OnAudioInstanceReady@115(AudioInstance instance_ptr);

  // Notifies Chrome that the AuthInstance interface is ready.
  [MinVersion=1] OnAuthInstanceReady@106(AuthInstance instance_ptr);

  // Notifies Chrome that the BluetoothInstance interface is ready.
  [MinVersion=9] OnBluetoothInstanceReady@113(BluetoothInstance instance_ptr);

  // Notifies Chrome that the BootPhaseMonitorInstance interface is ready.
  [MinVersion=19] OnBootPhaseMonitorInstanceReady@125(
      BootPhaseMonitorInstance instance_ptr);

  // Notifies Chrome that the ClipboardInstance interface is ready.
  [MinVersion=2] OnClipboardInstanceReady@109(ClipboardInstance instance_ptr);

  // Notifies Chrome that the CrashCollectorInstance interface is ready.
  [MinVersion=7] OnCrashCollectorInstanceReady@112(
      CrashCollectorInstance instance_ptr);

  // Notifies Chrome that the EnterpriseReportingInstance interface is ready.
  [MinVersion=15] OnEnterpriseReportingInstanceReady@122(
      EnterpriseReportingInstance instance_ptr);

  // Notifies Chrome that the FileSystemInstance interface is ready.
  [MinVersion=13] OnFileSystemInstanceReady@119(
      FileSystemInstance instance_ptr);

  // Notifies Chrome that the ImeInstance interface is ready.
  [MinVersion=3] OnImeInstanceReady@110(ImeInstance instance_ptr);

  // Notifies Chrome that the IntentHelperInstance interface is ready.
  [MinVersion=4] OnIntentHelperInstanceReady@111(
      IntentHelperInstance instance_ptr);

  // Notifies Chrome that the KioskInstance interface is ready.
  [MinVersion=20] OnKioskInstanceReady@126(KioskInstance instance_ptr);

  // Notifies Chrome that the LockScreenInstance interface is ready.
  [MinVersion=29] OnLockScreenInstanceReady@134(LockScreenInstance instance_ptr);

  // Notifies Chrome that the MetricsInstance interface is ready.
  [MinVersion=10] OnMetricsInstanceReady@116(MetricsInstance instance_ptr);

  // Notifies Chrome that the NetInstance interface is ready.
  [MinVersion=5] OnNetInstanceReady@108(NetInstance instance_ptr);

  // Notifies Chrome that the NotificationsInstance interface is ready.
  OnNotificationsInstanceReady@102(NotificationsInstance instance_ptr);

  // Notifies Chrome that the ObbMounter interface is ready.
  [MinVersion=14] OnObbMounterInstanceReady@120(ObbMounterInstance instance_ptr);

  // Notifies Chrome that the PolicyInstance interface is ready.
  [MinVersion=7] OnPolicyInstanceReady@114(PolicyInstance instance_ptr);

  // Notifies Chrome that the PowerInstance interface is ready.
  OnPowerInstanceReady@103(PowerInstance instance_ptr);

  // Notifies Chrome that the PrintInstance interface is ready.
  [MinVersion=16] OnPrintInstanceReady@121(PrintInstance instance_ptr);

  // Notifies Chrome that the ProcessInstance interface is ready.
  OnProcessInstanceReady@104(ProcessInstance instance_ptr);

  // Notifies Chrome that the StorageManagerInstance interface is ready.
  [MinVersion=12] OnStorageManagerInstanceReady@118(StorageManagerInstance instance_ptr);

  // Notifies Chrome that the TracingInstance interface is ready.
  [MinVersion=22] OnTracingInstanceReady@128(TracingInstance instance_ptr);

  // Notifies Chrome that the TtsInstance interface is ready.
  [MinVersion=17] OnTtsInstanceReady@123(TtsInstance instance_ptr);

  // Notifies Chrome that the VideoInstance interface is ready.
  [MinVersion=6] OnVideoInstanceReady@107(VideoInstance instance_ptr);

  // Notifies Chrome that the VoiceInteractionArcHomeInstance is ready.
  [MinVersion=24] OnVoiceInteractionArcHomeInstanceReady@130(
                      VoiceInteractionArcHomeInstance instance_ptr);

  // Notifies Chrome that the VoiceInteractionFrameworkInstance is ready.
  [MinVersion=23] OnVoiceInteractionFrameworkInstanceReady@129(
                      VoiceInteractionFrameworkInstance instance_ptr);

  // Notifies Chrome that the VolumeMounter interface is ready.
  [MinVersion=25] OnVolumeMounterInstanceReady@131(VolumeMounterInstance instance_ptr);

  // Notifies Chrome that the WallpaperInstance interface is ready.
  [MinVersion=18] OnWallpaperInstanceReady@124(WallpaperInstance instance_ptr);
};

interface ArcBridgeInstance {
  // Establishes full-duplex communication with the host.
  // |host_ptr| is the MessagePipe endpoint that is bound to the
  // ArcBridgeHostPtr binding.
  Init@0(ArcBridgeHost host_ptr);
};