| OLD | NEW | 
|---|
| 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 BLIMP_ENGINE_SESSION_BLIMP_ENGINE_SESSION_H_ | 5 #ifndef BLIMP_ENGINE_SESSION_BLIMP_ENGINE_SESSION_H_ | 
| 6 #define BLIMP_ENGINE_SESSION_BLIMP_ENGINE_SESSION_H_ | 6 #define BLIMP_ENGINE_SESSION_BLIMP_ENGINE_SESSION_H_ | 
| 7 | 7 | 
| 8 #include <stdint.h> | 8 #include <stdint.h> | 
| 9 | 9 | 
| 10 #include <memory> | 10 #include <memory> | 
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 49 | 49 | 
| 50 namespace wm { | 50 namespace wm { | 
| 51 class FocusController; | 51 class FocusController; | 
| 52 } | 52 } | 
| 53 | 53 | 
| 54 namespace blimp { | 54 namespace blimp { | 
| 55 | 55 | 
| 56 class BlimpConnection; | 56 class BlimpConnection; | 
| 57 class BlimpMessage; | 57 class BlimpMessage; | 
| 58 class BlimpMessageThreadPipe; | 58 class BlimpMessageThreadPipe; | 
|  | 59 class BlobCache; | 
|  | 60 class BlobChannelSender; | 
|  | 61 class HeliumBlobSenderDelegate; | 
| 59 class ThreadPipeManager; | 62 class ThreadPipeManager; | 
| 60 class SettingsManager; | 63 class SettingsManager; | 
| 61 | 64 | 
| 62 namespace engine { | 65 namespace engine { | 
| 63 | 66 | 
| 64 class BlimpBrowserContext; | 67 class BlimpBrowserContext; | 
| 65 class BlimpEngineConfig; | 68 class BlimpEngineConfig; | 
| 66 class BlimpFocusClient; | 69 class BlimpFocusClient; | 
| 67 class BlimpScreen; | 70 class BlimpScreen; | 
| 68 class BlimpWindowTreeHost; | 71 class BlimpWindowTreeHost; | 
| (...skipping 15 matching lines...) Expand all  Loading... | 
| 84                      SettingsManager* settings_manager); | 87                      SettingsManager* settings_manager); | 
| 85   ~BlimpEngineSession() override; | 88   ~BlimpEngineSession() override; | 
| 86 | 89 | 
| 87   // Starts the network stack on the IO thread, and sets default placeholder | 90   // Starts the network stack on the IO thread, and sets default placeholder | 
| 88   // values for e.g. screen size pending real values being supplied by the | 91   // values for e.g. screen size pending real values being supplied by the | 
| 89   // client. | 92   // client. | 
| 90   void Initialize(); | 93   void Initialize(); | 
| 91 | 94 | 
| 92   BlimpBrowserContext* browser_context() { return browser_context_.get(); } | 95   BlimpBrowserContext* browser_context() { return browser_context_.get(); } | 
| 93 | 96 | 
|  | 97   BlobChannelSender* blob_channel_sender() { | 
|  | 98     return blob_channel_sender_.get(); | 
|  | 99   } | 
|  | 100 | 
| 94   // Gets Engine's listening port. Invokes callback with the allocated port. | 101   // Gets Engine's listening port. Invokes callback with the allocated port. | 
| 95   void GetEnginePortForTesting(const GetPortCallback& callback); | 102   void GetEnginePortForTesting(const GetPortCallback& callback); | 
| 96 | 103 | 
| 97   // BlimpMessageProcessor implementation. | 104   // BlimpMessageProcessor implementation. | 
| 98   // This object handles incoming TAB_CONTROL and NAVIGATION messages directly. | 105   // This object handles incoming TAB_CONTROL and NAVIGATION messages directly. | 
| 99   void ProcessMessage(std::unique_ptr<BlimpMessage> message, | 106   void ProcessMessage(std::unique_ptr<BlimpMessage> message, | 
| 100                       const net::CompletionCallback& callback) override; | 107                       const net::CompletionCallback& callback) override; | 
| 101 | 108 | 
| 102  private: | 109  private: | 
| 103   // Creates ThreadPipeManager, registers features, and then starts to accept | 110   // Creates ThreadPipeManager, registers features, and then starts to accept | 
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 204   // Manages all global settings for the engine session. | 211   // Manages all global settings for the engine session. | 
| 205   SettingsManager* settings_manager_; | 212   SettingsManager* settings_manager_; | 
| 206 | 213 | 
| 207   // Handles all incoming messages for type SETTINGS. | 214   // Handles all incoming messages for type SETTINGS. | 
| 208   EngineSettingsFeature settings_feature_; | 215   EngineSettingsFeature settings_feature_; | 
| 209 | 216 | 
| 210   // Handles all incoming and outgoing messages related to RenderWidget, | 217   // Handles all incoming and outgoing messages related to RenderWidget, | 
| 211   // including INPUT, COMPOSITOR and RENDER_WIDGET messages. | 218   // including INPUT, COMPOSITOR and RENDER_WIDGET messages. | 
| 212   EngineRenderWidgetFeature render_widget_feature_; | 219   EngineRenderWidgetFeature render_widget_feature_; | 
| 213 | 220 | 
|  | 221   // Sends outgoing blob data as BlimpMessages. | 
|  | 222   HeliumBlobSenderDelegate* blob_delegate_; | 
|  | 223 | 
|  | 224   // Receives image data from the renderer and sends it to the client via | 
|  | 225   // |blob_delegate_|. | 
|  | 226   std::unique_ptr<BlobChannelSender> blob_channel_sender_; | 
|  | 227 | 
| 214   // Container for connection manager, authentication handler, and | 228   // Container for connection manager, authentication handler, and | 
| 215   // browser connection handler. The components run on the I/O thread, and | 229   // browser connection handler. The components run on the I/O thread, and | 
| 216   // this object is destroyed there. | 230   // this object is destroyed there. | 
| 217   std::unique_ptr<EngineNetworkComponents> net_components_; | 231   std::unique_ptr<EngineNetworkComponents> net_components_; | 
| 218 | 232 | 
| 219   std::unique_ptr<ThreadPipeManager> thread_pipe_manager_; | 233   std::unique_ptr<ThreadPipeManager> thread_pipe_manager_; | 
| 220 | 234 | 
| 221   // Used to send TAB_CONTROL or NAVIGATION messages to client. | 235   // Used to send TAB_CONTROL or NAVIGATION messages to client. | 
| 222   std::unique_ptr<BlimpMessageProcessor> tab_control_message_sender_; | 236   std::unique_ptr<BlimpMessageProcessor> tab_control_message_sender_; | 
| 223   std::unique_ptr<BlimpMessageProcessor> navigation_message_sender_; | 237   std::unique_ptr<BlimpMessageProcessor> navigation_message_sender_; | 
| 224 | 238 | 
| 225   DISALLOW_COPY_AND_ASSIGN(BlimpEngineSession); | 239   DISALLOW_COPY_AND_ASSIGN(BlimpEngineSession); | 
| 226 }; | 240 }; | 
| 227 | 241 | 
| 228 }  // namespace engine | 242 }  // namespace engine | 
| 229 }  // namespace blimp | 243 }  // namespace blimp | 
| 230 | 244 | 
| 231 #endif  // BLIMP_ENGINE_SESSION_BLIMP_ENGINE_SESSION_H_ | 245 #endif  // BLIMP_ENGINE_SESSION_BLIMP_ENGINE_SESSION_H_ | 
| OLD | NEW | 
|---|