OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 REMOTING_HOST_CLIENT_SESSION_H_ | 5 #ifndef REMOTING_HOST_CLIENT_SESSION_H_ |
6 #define REMOTING_HOST_CLIENT_SESSION_H_ | 6 #define REMOTING_HOST_CLIENT_SESSION_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 | 9 |
10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
(...skipping 18 matching lines...) Expand all Loading... |
29 namespace base { | 29 namespace base { |
30 class SingleThreadTaskRunner; | 30 class SingleThreadTaskRunner; |
31 } // namespace base | 31 } // namespace base |
32 | 32 |
33 namespace remoting { | 33 namespace remoting { |
34 | 34 |
35 class AudioEncoder; | 35 class AudioEncoder; |
36 class AudioScheduler; | 36 class AudioScheduler; |
37 class DesktopEnvironment; | 37 class DesktopEnvironment; |
38 class DesktopEnvironmentFactory; | 38 class DesktopEnvironmentFactory; |
39 class EventExecutor; | 39 class InputInjector; |
40 class SessionController; | 40 class SessionController; |
41 class VideoEncoder; | 41 class VideoEncoder; |
42 class VideoScheduler; | 42 class VideoScheduler; |
43 | 43 |
44 // A ClientSession keeps a reference to a connection to a client, and maintains | 44 // A ClientSession keeps a reference to a connection to a client, and maintains |
45 // per-client state. | 45 // per-client state. |
46 class ClientSession | 46 class ClientSession |
47 : public protocol::HostStub, | 47 : public protocol::HostStub, |
48 public protocol::ConnectionToClient::EventHandler, | 48 public protocol::ConnectionToClient::EventHandler, |
49 public base::NonThreadSafe { | 49 public base::NonThreadSafe { |
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
206 scoped_refptr<base::SingleThreadTaskRunner> input_task_runner_; | 206 scoped_refptr<base::SingleThreadTaskRunner> input_task_runner_; |
207 scoped_refptr<base::SingleThreadTaskRunner> video_capture_task_runner_; | 207 scoped_refptr<base::SingleThreadTaskRunner> video_capture_task_runner_; |
208 scoped_refptr<base::SingleThreadTaskRunner> video_encode_task_runner_; | 208 scoped_refptr<base::SingleThreadTaskRunner> video_encode_task_runner_; |
209 scoped_refptr<base::SingleThreadTaskRunner> network_task_runner_; | 209 scoped_refptr<base::SingleThreadTaskRunner> network_task_runner_; |
210 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_; | 210 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_; |
211 | 211 |
212 // Schedulers for audio and video capture. | 212 // Schedulers for audio and video capture. |
213 scoped_refptr<AudioScheduler> audio_scheduler_; | 213 scoped_refptr<AudioScheduler> audio_scheduler_; |
214 scoped_refptr<VideoScheduler> video_scheduler_; | 214 scoped_refptr<VideoScheduler> video_scheduler_; |
215 | 215 |
216 scoped_ptr<EventExecutor> event_executor_; | 216 // Used to inject mouse and keyboard input and handle clipboard events. |
| 217 scoped_ptr<InputInjector> input_injector_; |
217 | 218 |
218 // Used to apply client-requested changes in screen resolution. | 219 // Used to apply client-requested changes in screen resolution. |
219 scoped_ptr<SessionController> session_controller_; | 220 scoped_ptr<SessionController> session_controller_; |
220 | 221 |
221 DISALLOW_COPY_AND_ASSIGN(ClientSession); | 222 DISALLOW_COPY_AND_ASSIGN(ClientSession); |
222 }; | 223 }; |
223 | 224 |
224 } // namespace remoting | 225 } // namespace remoting |
225 | 226 |
226 #endif // REMOTING_HOST_CLIENT_SESSION_H_ | 227 #endif // REMOTING_HOST_CLIENT_SESSION_H_ |
OLD | NEW |