OLD | NEW |
---|---|
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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_HOST_IMPL_H_ | 5 #ifndef COMPONENTS_ARC_ARC_BRIDGE_HOST_IMPL_H_ |
6 #define COMPONENTS_ARC_ARC_BRIDGE_HOST_IMPL_H_ | 6 #define COMPONENTS_ARC_ARC_BRIDGE_HOST_IMPL_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
62 void OnPolicyInstanceReady(mojom::PolicyInstancePtr policy_ptr) override; | 62 void OnPolicyInstanceReady(mojom::PolicyInstancePtr policy_ptr) override; |
63 void OnPowerInstanceReady(mojom::PowerInstancePtr power_ptr) override; | 63 void OnPowerInstanceReady(mojom::PowerInstancePtr power_ptr) override; |
64 void OnPrintInstanceReady(mojom::PrintInstancePtr print_ptr) override; | 64 void OnPrintInstanceReady(mojom::PrintInstancePtr print_ptr) override; |
65 void OnProcessInstanceReady(mojom::ProcessInstancePtr process_ptr) override; | 65 void OnProcessInstanceReady(mojom::ProcessInstancePtr process_ptr) override; |
66 void OnStorageManagerInstanceReady( | 66 void OnStorageManagerInstanceReady( |
67 mojom::StorageManagerInstancePtr storage_manager_ptr) override; | 67 mojom::StorageManagerInstancePtr storage_manager_ptr) override; |
68 void OnTtsInstanceReady(mojom::TtsInstancePtr tts_ptr) override; | 68 void OnTtsInstanceReady(mojom::TtsInstancePtr tts_ptr) override; |
69 void OnVideoInstanceReady(mojom::VideoInstancePtr video_ptr) override; | 69 void OnVideoInstanceReady(mojom::VideoInstancePtr video_ptr) override; |
70 void OnWallpaperInstanceReady( | 70 void OnWallpaperInstanceReady( |
71 mojom::WallpaperInstancePtr wallpaper_ptr) override; | 71 mojom::WallpaperInstancePtr wallpaper_ptr) override; |
72 void OnTraceInstanceReady(mojom::TraceInstancePtr trace_ptr) override; | |
Yusuke Sato
2016/10/12 05:58:13
sort
shunhsingou
2016/12/22 04:04:34
Removed
| |
72 | 73 |
73 private: | 74 private: |
74 // Called when the bridge channel is closed. This typically only happens when | 75 // Called when the bridge channel is closed. This typically only happens when |
75 // the ARC instance crashes. | 76 // the ARC instance crashes. |
76 void OnClosed(); | 77 void OnClosed(); |
77 | 78 |
78 // The common implementation to handle ArcBridgeHost overrides. | 79 // The common implementation to handle ArcBridgeHost overrides. |
79 // |T| is a ARC Mojo Instance type. | 80 // |T| is a ARC Mojo Instance type. |
80 template <typename T> | 81 template <typename T> |
81 void OnInstanceReady(InstanceHolder<T>* holder, mojo::InterfacePtr<T> ptr); | 82 void OnInstanceReady(InstanceHolder<T>* holder, mojo::InterfacePtr<T> ptr); |
82 | 83 |
83 // Called if one of the established channels is closed. | 84 // Called if one of the established channels is closed. |
84 void OnChannelClosed(MojoChannel* channel); | 85 void OnChannelClosed(MojoChannel* channel); |
85 | 86 |
86 base::ThreadChecker thread_checker_; | 87 base::ThreadChecker thread_checker_; |
87 | 88 |
88 mojo::Binding<mojom::ArcBridgeHost> binding_; | 89 mojo::Binding<mojom::ArcBridgeHost> binding_; |
89 mojom::ArcBridgeInstancePtr instance_; | 90 mojom::ArcBridgeInstancePtr instance_; |
90 | 91 |
91 // Put as a last member to ensure that any callback tied to the elements | 92 // Put as a last member to ensure that any callback tied to the elements |
92 // is not invoked. | 93 // is not invoked. |
93 std::vector<std::unique_ptr<MojoChannel>> mojo_channels_; | 94 std::vector<std::unique_ptr<MojoChannel>> mojo_channels_; |
94 | 95 |
95 DISALLOW_COPY_AND_ASSIGN(ArcBridgeHostImpl); | 96 DISALLOW_COPY_AND_ASSIGN(ArcBridgeHostImpl); |
96 }; | 97 }; |
97 | 98 |
98 } // namespace arc | 99 } // namespace arc |
99 | 100 |
100 #endif // COMPONENTS_ARC_ARC_BRIDGE_HOST_IMPL_H_ | 101 #endif // COMPONENTS_ARC_ARC_BRIDGE_HOST_IMPL_H_ |
OLD | NEW |