Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(865)

Side by Side Diff: components/arc/arc_bridge_service.h

Issue 1817093003: Host-side implementation of ARC audio bridge. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove unused override and update data type. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/arc/BUILD.gn ('k') | components/arc/arc_bridge_service.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_ 5 #ifndef COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_
6 #define COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_ 6 #define COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 // Called whenever the state of the bridge has changed. 70 // Called whenever the state of the bridge has changed.
71 virtual void OnStateChanged(State state) {} 71 virtual void OnStateChanged(State state) {}
72 72
73 // Called whenever ARC's availability has changed for this system. 73 // Called whenever ARC's availability has changed for this system.
74 virtual void OnAvailableChanged(bool available) {} 74 virtual void OnAvailableChanged(bool available) {}
75 75
76 // Called whenever the ARC app interface state changes. 76 // Called whenever the ARC app interface state changes.
77 virtual void OnAppInstanceReady() {} 77 virtual void OnAppInstanceReady() {}
78 virtual void OnAppInstanceClosed() {} 78 virtual void OnAppInstanceClosed() {}
79 79
80 // Called whenever the ARC audio interface state changes.
81 virtual void OnAudioInstanceReady() {}
82 virtual void OnAudioInstanceClosed() {}
83
80 // Called whenever the ARC auth interface state changes. 84 // Called whenever the ARC auth interface state changes.
81 virtual void OnAuthInstanceReady() {} 85 virtual void OnAuthInstanceReady() {}
82 virtual void OnAuthInstanceClosed() {} 86 virtual void OnAuthInstanceClosed() {}
83 87
84 // Called whenever the ARC clipboard interface state changes. 88 // Called whenever the ARC clipboard interface state changes.
85 virtual void OnClipboardInstanceReady() {} 89 virtual void OnClipboardInstanceReady() {}
86 virtual void OnClipboardInstanceClosed() {} 90 virtual void OnClipboardInstanceClosed() {}
87 91
88 // Called whenever the ARC crash collector interface state changes. 92 // Called whenever the ARC crash collector interface state changes.
89 virtual void OnCrashCollectorInstanceReady() {} 93 virtual void OnCrashCollectorInstanceReady() {}
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 // Adds or removes observers. This can only be called on the thread that this 160 // Adds or removes observers. This can only be called on the thread that this
157 // class was created on. 161 // class was created on.
158 void AddObserver(Observer* observer); 162 void AddObserver(Observer* observer);
159 void RemoveObserver(Observer* observer); 163 void RemoveObserver(Observer* observer);
160 164
161 // Gets the Mojo interface for all the instance services. This will return 165 // Gets the Mojo interface for all the instance services. This will return
162 // nullptr if that particular service is not ready yet. Use an Observer if 166 // nullptr if that particular service is not ready yet. Use an Observer if
163 // you want to be notified when this is ready. This can only be called on the 167 // you want to be notified when this is ready. This can only be called on the
164 // thread that this class was created on. 168 // thread that this class was created on.
165 AppInstance* app_instance() { return app_ptr_.get(); } 169 AppInstance* app_instance() { return app_ptr_.get(); }
170 AudioInstance* audio_instance() { return audio_ptr_.get(); }
166 AuthInstance* auth_instance() { return auth_ptr_.get(); } 171 AuthInstance* auth_instance() { return auth_ptr_.get(); }
167 ClipboardInstance* clipboard_instance() { return clipboard_ptr_.get(); } 172 ClipboardInstance* clipboard_instance() { return clipboard_ptr_.get(); }
168 CrashCollectorInstance* crash_collector_instance() { 173 CrashCollectorInstance* crash_collector_instance() {
169 return crash_collector_ptr_.get(); 174 return crash_collector_ptr_.get();
170 } 175 }
171 ImeInstance* ime_instance() { return ime_ptr_.get(); } 176 ImeInstance* ime_instance() { return ime_ptr_.get(); }
172 InputInstance* input_instance() { return input_ptr_.get(); } 177 InputInstance* input_instance() { return input_ptr_.get(); }
173 IntentHelperInstance* intent_helper_instance() { 178 IntentHelperInstance* intent_helper_instance() {
174 return intent_helper_ptr_.get(); 179 return intent_helper_ptr_.get();
175 } 180 }
176 NetInstance* net_instance() { return net_ptr_.get(); } 181 NetInstance* net_instance() { return net_ptr_.get(); }
177 NotificationsInstance* notifications_instance() { 182 NotificationsInstance* notifications_instance() {
178 return notifications_ptr_.get(); 183 return notifications_ptr_.get();
179 } 184 }
180 PolicyInstance* policy_instance() { return policy_ptr_.get(); } 185 PolicyInstance* policy_instance() { return policy_ptr_.get(); }
181 PowerInstance* power_instance() { return power_ptr_.get(); } 186 PowerInstance* power_instance() { return power_ptr_.get(); }
182 ProcessInstance* process_instance() { return process_ptr_.get(); } 187 ProcessInstance* process_instance() { return process_ptr_.get(); }
183 VideoInstance* video_instance() { return video_ptr_.get(); } 188 VideoInstance* video_instance() { return video_ptr_.get(); }
184 189
185 int32_t app_version() const { return app_ptr_.version(); } 190 int32_t app_version() const { return app_ptr_.version(); }
191 int32_t audio_version() const { return audio_ptr_.version(); }
186 int32_t auth_version() const { return auth_ptr_.version(); } 192 int32_t auth_version() const { return auth_ptr_.version(); }
187 int32_t clipboard_version() const { return clipboard_ptr_.version(); } 193 int32_t clipboard_version() const { return clipboard_ptr_.version(); }
188 int32_t crash_collector_version() const { 194 int32_t crash_collector_version() const {
189 return crash_collector_ptr_.version(); 195 return crash_collector_ptr_.version();
190 } 196 }
191 int32_t ime_version() const { return ime_ptr_.version(); } 197 int32_t ime_version() const { return ime_ptr_.version(); }
192 int32_t input_version() const { return input_ptr_.version(); } 198 int32_t input_version() const { return input_ptr_.version(); }
193 int32_t intent_helper_version() const { return intent_helper_ptr_.version(); } 199 int32_t intent_helper_version() const { return intent_helper_ptr_.version(); }
194 int32_t net_version() const { return net_ptr_.version(); } 200 int32_t net_version() const { return net_ptr_.version(); }
195 int32_t notifications_version() const { return notifications_ptr_.version(); } 201 int32_t notifications_version() const { return notifications_ptr_.version(); }
196 int32_t policy_version() const { return policy_ptr_.version(); } 202 int32_t policy_version() const { return policy_ptr_.version(); }
197 int32_t power_version() const { return power_ptr_.version(); } 203 int32_t power_version() const { return power_ptr_.version(); }
198 int32_t process_version() const { return process_ptr_.version(); } 204 int32_t process_version() const { return process_ptr_.version(); }
199 int32_t video_version() const { return video_ptr_.version(); } 205 int32_t video_version() const { return video_ptr_.version(); }
200 206
201 // ArcHost: 207 // ArcHost:
202 void OnAppInstanceReady(AppInstancePtr app_ptr) override; 208 void OnAppInstanceReady(AppInstancePtr app_ptr) override;
209 void OnAudioInstanceReady(AudioInstancePtr audio_ptr) override;
203 void OnAuthInstanceReady(AuthInstancePtr auth_ptr) override; 210 void OnAuthInstanceReady(AuthInstancePtr auth_ptr) override;
204 void OnClipboardInstanceReady(ClipboardInstancePtr clipboard_ptr) override; 211 void OnClipboardInstanceReady(ClipboardInstancePtr clipboard_ptr) override;
205 void OnCrashCollectorInstanceReady( 212 void OnCrashCollectorInstanceReady(
206 CrashCollectorInstancePtr crash_collector_ptr) override; 213 CrashCollectorInstancePtr crash_collector_ptr) override;
207 void OnImeInstanceReady(ImeInstancePtr ime_ptr) override; 214 void OnImeInstanceReady(ImeInstancePtr ime_ptr) override;
208 void OnInputInstanceReady(InputInstancePtr input_ptr) override; 215 void OnInputInstanceReady(InputInstancePtr input_ptr) override;
209 void OnIntentHelperInstanceReady( 216 void OnIntentHelperInstanceReady(
210 IntentHelperInstancePtr intent_helper_ptr) override; 217 IntentHelperInstancePtr intent_helper_ptr) override;
211 void OnNetInstanceReady(NetInstancePtr net_ptr) override; 218 void OnNetInstanceReady(NetInstancePtr net_ptr) override;
212 void OnNotificationsInstanceReady( 219 void OnNotificationsInstanceReady(
(...skipping 27 matching lines...) Expand all
240 247
241 private: 248 private:
242 friend class ArcBridgeTest; 249 friend class ArcBridgeTest;
243 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Basic); 250 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Basic);
244 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Prerequisites); 251 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Prerequisites);
245 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, ShutdownMidStartup); 252 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, ShutdownMidStartup);
246 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Restart); 253 FRIEND_TEST_ALL_PREFIXES(ArcBridgeTest, Restart);
247 254
248 // Called when one of the individual channels is closed. 255 // Called when one of the individual channels is closed.
249 void CloseAppChannel(); 256 void CloseAppChannel();
257 void CloseAudioChannel();
250 void CloseAuthChannel(); 258 void CloseAuthChannel();
251 void CloseClipboardChannel(); 259 void CloseClipboardChannel();
252 void CloseCrashCollectorChannel(); 260 void CloseCrashCollectorChannel();
253 void CloseImeChannel(); 261 void CloseImeChannel();
254 void CloseInputChannel(); 262 void CloseInputChannel();
255 void CloseIntentHelperChannel(); 263 void CloseIntentHelperChannel();
256 void CloseNetChannel(); 264 void CloseNetChannel();
257 void CloseNotificationsChannel(); 265 void CloseNotificationsChannel();
258 void ClosePolicyChannel(); 266 void ClosePolicyChannel();
259 void ClosePowerChannel(); 267 void ClosePowerChannel();
260 void CloseProcessChannel(); 268 void CloseProcessChannel();
261 void CloseVideoChannel(); 269 void CloseVideoChannel();
262 270
263 // Callbacks for QueryVersion. 271 // Callbacks for QueryVersion.
264 void OnAppVersionReady(int32_t version); 272 void OnAppVersionReady(int32_t version);
273 void OnAudioVersionReady(int32_t version);
265 void OnAuthVersionReady(int32_t version); 274 void OnAuthVersionReady(int32_t version);
266 void OnClipboardVersionReady(int32_t version); 275 void OnClipboardVersionReady(int32_t version);
267 void OnCrashCollectorVersionReady(int32_t version); 276 void OnCrashCollectorVersionReady(int32_t version);
268 void OnImeVersionReady(int32_t version); 277 void OnImeVersionReady(int32_t version);
269 void OnInputVersionReady(int32_t version); 278 void OnInputVersionReady(int32_t version);
270 void OnIntentHelperVersionReady(int32_t version); 279 void OnIntentHelperVersionReady(int32_t version);
271 void OnNetVersionReady(int32_t version); 280 void OnNetVersionReady(int32_t version);
272 void OnNotificationsVersionReady(int32_t version); 281 void OnNotificationsVersionReady(int32_t version);
273 void OnPolicyVersionReady(int32_t version); 282 void OnPolicyVersionReady(int32_t version);
274 void OnPowerVersionReady(int32_t version); 283 void OnPowerVersionReady(int32_t version);
275 void OnProcessVersionReady(int32_t version); 284 void OnProcessVersionReady(int32_t version);
276 void OnVideoVersionReady(int32_t version); 285 void OnVideoVersionReady(int32_t version);
277 286
278 // Mojo interfaces. 287 // Mojo interfaces.
279 AppInstancePtr app_ptr_; 288 AppInstancePtr app_ptr_;
289 AudioInstancePtr audio_ptr_;
280 AuthInstancePtr auth_ptr_; 290 AuthInstancePtr auth_ptr_;
281 ClipboardInstancePtr clipboard_ptr_; 291 ClipboardInstancePtr clipboard_ptr_;
282 CrashCollectorInstancePtr crash_collector_ptr_; 292 CrashCollectorInstancePtr crash_collector_ptr_;
283 ImeInstancePtr ime_ptr_; 293 ImeInstancePtr ime_ptr_;
284 InputInstancePtr input_ptr_; 294 InputInstancePtr input_ptr_;
285 IntentHelperInstancePtr intent_helper_ptr_; 295 IntentHelperInstancePtr intent_helper_ptr_;
286 NetInstancePtr net_ptr_; 296 NetInstancePtr net_ptr_;
287 NotificationsInstancePtr notifications_ptr_; 297 NotificationsInstancePtr notifications_ptr_;
288 PolicyInstancePtr policy_ptr_; 298 PolicyInstancePtr policy_ptr_;
289 PowerInstancePtr power_ptr_; 299 PowerInstancePtr power_ptr_;
290 ProcessInstancePtr process_ptr_; 300 ProcessInstancePtr process_ptr_;
291 VideoInstancePtr video_ptr_; 301 VideoInstancePtr video_ptr_;
292 302
293 // Temporary Mojo interfaces. After a Mojo interface pointer has been 303 // Temporary Mojo interfaces. After a Mojo interface pointer has been
294 // received from the other endpoint, we still need to asynchronously query 304 // received from the other endpoint, we still need to asynchronously query
295 // its version. While that is going on, we should still return nullptr on 305 // its version. While that is going on, we should still return nullptr on
296 // the xxx_instance() functions. 306 // the xxx_instance() functions.
297 // To keep the xxx_instance() functions being trivial, store the instance 307 // To keep the xxx_instance() functions being trivial, store the instance
298 // pointer in a temporary variable to avoid losing its reference. 308 // pointer in a temporary variable to avoid losing its reference.
299 AppInstancePtr temporary_app_ptr_; 309 AppInstancePtr temporary_app_ptr_;
310 AudioInstancePtr temporary_audio_ptr_;
300 AuthInstancePtr temporary_auth_ptr_; 311 AuthInstancePtr temporary_auth_ptr_;
301 ClipboardInstancePtr temporary_clipboard_ptr_; 312 ClipboardInstancePtr temporary_clipboard_ptr_;
302 CrashCollectorInstancePtr temporary_crash_collector_ptr_; 313 CrashCollectorInstancePtr temporary_crash_collector_ptr_;
303 ImeInstancePtr temporary_ime_ptr_; 314 ImeInstancePtr temporary_ime_ptr_;
304 InputInstancePtr temporary_input_ptr_; 315 InputInstancePtr temporary_input_ptr_;
305 IntentHelperInstancePtr temporary_intent_helper_ptr_; 316 IntentHelperInstancePtr temporary_intent_helper_ptr_;
306 NetInstancePtr temporary_net_ptr_; 317 NetInstancePtr temporary_net_ptr_;
307 NotificationsInstancePtr temporary_notifications_ptr_; 318 NotificationsInstancePtr temporary_notifications_ptr_;
308 PolicyInstancePtr temporary_policy_ptr_; 319 PolicyInstancePtr temporary_policy_ptr_;
309 PowerInstancePtr temporary_power_ptr_; 320 PowerInstancePtr temporary_power_ptr_;
(...skipping 12 matching lines...) Expand all
322 333
323 // WeakPtrFactory to use callbacks. 334 // WeakPtrFactory to use callbacks.
324 base::WeakPtrFactory<ArcBridgeService> weak_factory_; 335 base::WeakPtrFactory<ArcBridgeService> weak_factory_;
325 336
326 DISALLOW_COPY_AND_ASSIGN(ArcBridgeService); 337 DISALLOW_COPY_AND_ASSIGN(ArcBridgeService);
327 }; 338 };
328 339
329 } // namespace arc 340 } // namespace arc
330 341
331 #endif // COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_ 342 #endif // COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_
OLDNEW
« no previous file with comments | « components/arc/BUILD.gn ('k') | components/arc/arc_bridge_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698