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 <string> | 8 #include <string> |
9 | 9 |
10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
(...skipping 22 matching lines...) Expand all Loading... |
33 class SingleThreadTaskRunner; | 33 class SingleThreadTaskRunner; |
34 } // namespace base | 34 } // namespace base |
35 | 35 |
36 namespace remoting { | 36 namespace remoting { |
37 | 37 |
38 class AudioEncoder; | 38 class AudioEncoder; |
39 class AudioScheduler; | 39 class AudioScheduler; |
40 class DesktopEnvironment; | 40 class DesktopEnvironment; |
41 class DesktopEnvironmentFactory; | 41 class DesktopEnvironmentFactory; |
42 class InputInjector; | 42 class InputInjector; |
| 43 class MouseShapePump; |
43 class ScreenControls; | 44 class ScreenControls; |
44 class VideoEncoder; | 45 class VideoEncoder; |
45 class VideoFramePump; | 46 class VideoFramePump; |
46 | 47 |
47 // A ClientSession keeps a reference to a connection to a client, and maintains | 48 // A ClientSession keeps a reference to a connection to a client, and maintains |
48 // per-client state. | 49 // per-client state. |
49 class ClientSession | 50 class ClientSession |
50 : public base::NonThreadSafe, | 51 : public base::NonThreadSafe, |
51 public protocol::HostStub, | 52 public protocol::HostStub, |
52 public protocol::ConnectionToClient::EventHandler, | 53 public protocol::ConnectionToClient::EventHandler, |
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 scoped_refptr<base::SingleThreadTaskRunner> input_task_runner_; | 216 scoped_refptr<base::SingleThreadTaskRunner> input_task_runner_; |
216 scoped_refptr<base::SingleThreadTaskRunner> video_capture_task_runner_; | 217 scoped_refptr<base::SingleThreadTaskRunner> video_capture_task_runner_; |
217 scoped_refptr<base::SingleThreadTaskRunner> video_encode_task_runner_; | 218 scoped_refptr<base::SingleThreadTaskRunner> video_encode_task_runner_; |
218 scoped_refptr<base::SingleThreadTaskRunner> network_task_runner_; | 219 scoped_refptr<base::SingleThreadTaskRunner> network_task_runner_; |
219 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_; | 220 scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_; |
220 | 221 |
221 // Schedulers for audio and video capture. | 222 // Schedulers for audio and video capture. |
222 // |video_frame_pump_| may be nullptr if the video channel is not required - | 223 // |video_frame_pump_| may be nullptr if the video channel is not required - |
223 // see ResetVideoPipeline(). | 224 // see ResetVideoPipeline(). |
224 scoped_refptr<AudioScheduler> audio_scheduler_; | 225 scoped_refptr<AudioScheduler> audio_scheduler_; |
225 scoped_refptr<VideoFramePump> video_frame_pump_; | 226 scoped_ptr<VideoFramePump> video_frame_pump_; |
| 227 scoped_ptr<MouseShapePump> mouse_shape_pump_; |
226 | 228 |
227 // The set of all capabilities supported by the client. | 229 // The set of all capabilities supported by the client. |
228 scoped_ptr<std::string> client_capabilities_; | 230 scoped_ptr<std::string> client_capabilities_; |
229 | 231 |
230 // The set of all capabilities supported by the host. | 232 // The set of all capabilities supported by the host. |
231 std::string host_capabilities_; | 233 std::string host_capabilities_; |
232 | 234 |
233 // The set of all capabilities negotiated between client and host. | 235 // The set of all capabilities negotiated between client and host. |
234 std::string capabilities_; | 236 std::string capabilities_; |
235 | 237 |
(...skipping 20 matching lines...) Expand all Loading... |
256 // Used to disable callbacks to |this| once DisconnectSession() has been | 258 // Used to disable callbacks to |this| once DisconnectSession() has been |
257 // called. | 259 // called. |
258 base::WeakPtrFactory<ClientSessionControl> weak_factory_; | 260 base::WeakPtrFactory<ClientSessionControl> weak_factory_; |
259 | 261 |
260 DISALLOW_COPY_AND_ASSIGN(ClientSession); | 262 DISALLOW_COPY_AND_ASSIGN(ClientSession); |
261 }; | 263 }; |
262 | 264 |
263 } // namespace remoting | 265 } // namespace remoting |
264 | 266 |
265 #endif // REMOTING_HOST_CLIENT_SESSION_H_ | 267 #endif // REMOTING_HOST_CLIENT_SESSION_H_ |
OLD | NEW |