OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_VIEW_MANAGER_VIEW_MANAGER_APP_H_ | 5 #ifndef COMPONENTS_VIEW_MANAGER_VIEW_MANAGER_APP_H_ |
6 #define COMPONENTS_VIEW_MANAGER_VIEW_MANAGER_APP_H_ | 6 #define COMPONENTS_VIEW_MANAGER_VIEW_MANAGER_APP_H_ |
7 | 7 |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "components/view_manager/connection_manager_delegate.h" | 9 #include "components/view_manager/connection_manager_delegate.h" |
10 #include "components/view_manager/gles2/gpu_impl.h" | 10 #include "components/view_manager/gles2/gpu_impl.h" |
11 #include "components/view_manager/public/interfaces/native_viewport.mojom.h" | |
12 #include "components/view_manager/public/interfaces/view_manager.mojom.h" | 11 #include "components/view_manager/public/interfaces/view_manager.mojom.h" |
13 #include "components/view_manager/public/interfaces/view_manager_root.mojom.h" | 12 #include "components/view_manager/public/interfaces/view_manager_root.mojom.h" |
14 #include "mojo/application/public/cpp/app_lifetime_helper.h" | 13 #include "mojo/application/public/cpp/app_lifetime_helper.h" |
15 #include "mojo/application/public/cpp/application_delegate.h" | 14 #include "mojo/application/public/cpp/application_delegate.h" |
16 #include "mojo/application/public/cpp/interface_factory.h" | 15 #include "mojo/application/public/cpp/interface_factory.h" |
17 #include "mojo/common/tracing_impl.h" | 16 #include "mojo/common/tracing_impl.h" |
18 | 17 |
19 namespace mojo { | 18 namespace mojo { |
20 class ApplicationImpl; | 19 class ApplicationImpl; |
21 } | 20 } |
22 | 21 |
23 namespace ui { | 22 namespace ui { |
24 class PlatformEventSource; | 23 class PlatformEventSource; |
25 } | 24 } |
26 | 25 |
27 namespace view_manager { | 26 namespace view_manager { |
28 | 27 |
29 class ConnectionManager; | 28 class ConnectionManager; |
30 | 29 |
31 class ViewManagerApp : public mojo::ApplicationDelegate, | 30 class ViewManagerApp : public mojo::ApplicationDelegate, |
32 public ConnectionManagerDelegate, | 31 public ConnectionManagerDelegate, |
33 public mojo::ErrorHandler, | 32 public mojo::ErrorHandler, |
34 public mojo::InterfaceFactory<mojo::ViewManagerRoot>, | 33 public mojo::InterfaceFactory<mojo::ViewManagerRoot>, |
35 public mojo::InterfaceFactory<mojo::ViewManagerService>, | 34 public mojo::InterfaceFactory<mojo::ViewManagerService>, |
36 public mojo::InterfaceFactory<mojo::NativeViewport>, | |
37 public mojo::InterfaceFactory<mojo::Gpu> { | 35 public mojo::InterfaceFactory<mojo::Gpu> { |
38 public: | 36 public: |
39 ViewManagerApp(); | 37 ViewManagerApp(); |
40 ~ViewManagerApp() override; | 38 ~ViewManagerApp() override; |
41 | 39 |
42 private: | 40 private: |
43 // ApplicationDelegate: | 41 // ApplicationDelegate: |
44 void Initialize(mojo::ApplicationImpl* app) override; | 42 void Initialize(mojo::ApplicationImpl* app) override; |
45 bool ConfigureIncomingConnection( | 43 bool ConfigureIncomingConnection( |
46 mojo::ApplicationConnection* connection) override; | 44 mojo::ApplicationConnection* connection) override; |
(...skipping 17 matching lines...) Expand all Loading... |
64 | 62 |
65 // mojo::InterfaceFactory<mojo::ViewManagerService>: | 63 // mojo::InterfaceFactory<mojo::ViewManagerService>: |
66 void Create( | 64 void Create( |
67 mojo::ApplicationConnection* connection, | 65 mojo::ApplicationConnection* connection, |
68 mojo::InterfaceRequest<mojo::ViewManagerService> request) override; | 66 mojo::InterfaceRequest<mojo::ViewManagerService> request) override; |
69 | 67 |
70 // mojo::InterfaceFactory<mojo::ViewManagerRoot>: | 68 // mojo::InterfaceFactory<mojo::ViewManagerRoot>: |
71 void Create(mojo::ApplicationConnection* connection, | 69 void Create(mojo::ApplicationConnection* connection, |
72 mojo::InterfaceRequest<mojo::ViewManagerRoot> request) override; | 70 mojo::InterfaceRequest<mojo::ViewManagerRoot> request) override; |
73 | 71 |
74 // mojo::InterfaceFactory<mojo::NativeViewport> implementation. | |
75 void Create(mojo::ApplicationConnection* connection, | |
76 mojo::InterfaceRequest<mojo::NativeViewport> request) override; | |
77 | |
78 // mojo::InterfaceFactory<mojo::Gpu> implementation. | 72 // mojo::InterfaceFactory<mojo::Gpu> implementation. |
79 void Create(mojo::ApplicationConnection* connection, | 73 void Create(mojo::ApplicationConnection* connection, |
80 mojo::InterfaceRequest<mojo::Gpu> request) override; | 74 mojo::InterfaceRequest<mojo::Gpu> request) override; |
81 | 75 |
82 // ErrorHandler (for |wm_internal_| and |wm_internal_client_binding_|). | 76 // ErrorHandler (for |wm_internal_| and |wm_internal_client_binding_|). |
83 void OnConnectionError() override; | 77 void OnConnectionError() override; |
84 | 78 |
85 mojo::ApplicationImpl* app_impl_; | 79 mojo::ApplicationImpl* app_impl_; |
86 scoped_ptr<mojo::Binding<mojo::ViewManagerRoot>> view_manager_root_binding_; | 80 scoped_ptr<mojo::Binding<mojo::ViewManagerRoot>> view_manager_root_binding_; |
87 scoped_ptr<ConnectionManager> connection_manager_; | 81 scoped_ptr<ConnectionManager> connection_manager_; |
88 mojo::TracingImpl tracing_; | 82 mojo::TracingImpl tracing_; |
89 scoped_refptr<gles2::GpuState> gpu_state_; | 83 scoped_refptr<gles2::GpuState> gpu_state_; |
90 scoped_ptr<ui::PlatformEventSource> event_source_; | 84 scoped_ptr<ui::PlatformEventSource> event_source_; |
91 bool is_headless_; | 85 bool is_headless_; |
92 | 86 |
93 DISALLOW_COPY_AND_ASSIGN(ViewManagerApp); | 87 DISALLOW_COPY_AND_ASSIGN(ViewManagerApp); |
94 }; | 88 }; |
95 | 89 |
96 } // namespace view_manager | 90 } // namespace view_manager |
97 | 91 |
98 #endif // COMPONENTS_VIEW_MANAGER_VIEW_MANAGER_APP_H_ | 92 #endif // COMPONENTS_VIEW_MANAGER_VIEW_MANAGER_APP_H_ |
OLD | NEW |