Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(278)

Side by Side Diff: remoting/host/client_session.h

Issue 1864213002: Convert //remoting to use std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Mac IWYU Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « remoting/host/chromoting_host_unittest.cc ('k') | remoting/host/client_session.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 <stdint.h> 8 #include <stdint.h>
9 9
10 #include <string> 10 #include <string>
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 const protocol::TransportRoute& route) = 0; 80 const protocol::TransportRoute& route) = 0;
81 81
82 protected: 82 protected:
83 virtual ~EventHandler() {} 83 virtual ~EventHandler() {}
84 }; 84 };
85 85
86 // |event_handler| and |desktop_environment_factory| must outlive |this|. 86 // |event_handler| and |desktop_environment_factory| must outlive |this|.
87 // All |HostExtension|s in |extensions| must outlive |this|. 87 // All |HostExtension|s in |extensions| must outlive |this|.
88 ClientSession(EventHandler* event_handler, 88 ClientSession(EventHandler* event_handler,
89 scoped_refptr<base::SingleThreadTaskRunner> audio_task_runner, 89 scoped_refptr<base::SingleThreadTaskRunner> audio_task_runner,
90 scoped_ptr<protocol::ConnectionToClient> connection, 90 std::unique_ptr<protocol::ConnectionToClient> connection,
91 DesktopEnvironmentFactory* desktop_environment_factory, 91 DesktopEnvironmentFactory* desktop_environment_factory,
92 const base::TimeDelta& max_duration, 92 const base::TimeDelta& max_duration,
93 scoped_refptr<protocol::PairingRegistry> pairing_registry, 93 scoped_refptr<protocol::PairingRegistry> pairing_registry,
94 const std::vector<HostExtension*>& extensions); 94 const std::vector<HostExtension*>& extensions);
95 ~ClientSession() override; 95 ~ClientSession() override;
96 96
97 // Returns the set of capabilities negotiated between client and host. 97 // Returns the set of capabilities negotiated between client and host.
98 const std::string& capabilities() const { return capabilities_; } 98 const std::string& capabilities() const { return capabilities_; }
99 99
100 // protocol::HostStub interface. 100 // protocol::HostStub interface.
(...skipping 30 matching lines...) Expand all
131 protocol::ConnectionToClient* connection() const { return connection_.get(); } 131 protocol::ConnectionToClient* connection() const { return connection_.get(); }
132 132
133 bool is_authenticated() { return is_authenticated_; } 133 bool is_authenticated() { return is_authenticated_; }
134 134
135 const std::string* client_capabilities() const { 135 const std::string* client_capabilities() const {
136 return client_capabilities_.get(); 136 return client_capabilities_.get();
137 } 137 }
138 138
139 private: 139 private:
140 // Creates a proxy for sending clipboard events to the client. 140 // Creates a proxy for sending clipboard events to the client.
141 scoped_ptr<protocol::ClipboardStub> CreateClipboardProxy(); 141 std::unique_ptr<protocol::ClipboardStub> CreateClipboardProxy();
142 142
143 void OnScreenSizeChanged(const webrtc::DesktopSize& size, 143 void OnScreenSizeChanged(const webrtc::DesktopSize& size,
144 const webrtc::DesktopVector& dpi); 144 const webrtc::DesktopVector& dpi);
145 145
146 EventHandler* event_handler_; 146 EventHandler* event_handler_;
147 147
148 // The connection to the client. 148 // The connection to the client.
149 scoped_ptr<protocol::ConnectionToClient> connection_; 149 std::unique_ptr<protocol::ConnectionToClient> connection_;
150 150
151 std::string client_jid_; 151 std::string client_jid_;
152 152
153 // Used to create a DesktopEnvironment instance for this session. 153 // Used to create a DesktopEnvironment instance for this session.
154 DesktopEnvironmentFactory* desktop_environment_factory_; 154 DesktopEnvironmentFactory* desktop_environment_factory_;
155 155
156 // The DesktopEnvironment instance for this session. 156 // The DesktopEnvironment instance for this session.
157 scoped_ptr<DesktopEnvironment> desktop_environment_; 157 std::unique_ptr<DesktopEnvironment> desktop_environment_;
158 158
159 // Filter used as the final element in the input pipeline. 159 // Filter used as the final element in the input pipeline.
160 protocol::InputFilter host_input_filter_; 160 protocol::InputFilter host_input_filter_;
161 161
162 // Tracker used to release pressed keys and buttons when disconnecting. 162 // Tracker used to release pressed keys and buttons when disconnecting.
163 protocol::InputEventTracker input_tracker_; 163 protocol::InputEventTracker input_tracker_;
164 164
165 // Filter used to disable remote inputs during local input activity. 165 // Filter used to disable remote inputs during local input activity.
166 RemoteInputFilter remote_input_filter_; 166 RemoteInputFilter remote_input_filter_;
167 167
(...skipping 18 matching lines...) Expand all
186 // There is no maximum if this value is <= 0. 186 // There is no maximum if this value is <= 0.
187 base::TimeDelta max_duration_; 187 base::TimeDelta max_duration_;
188 188
189 // A timer that triggers a disconnect when the maximum session duration 189 // A timer that triggers a disconnect when the maximum session duration
190 // is reached. 190 // is reached.
191 base::OneShotTimer max_duration_timer_; 191 base::OneShotTimer max_duration_timer_;
192 192
193 scoped_refptr<base::SingleThreadTaskRunner> audio_task_runner_; 193 scoped_refptr<base::SingleThreadTaskRunner> audio_task_runner_;
194 194
195 // Objects responsible for sending video, audio and mouse shape. 195 // Objects responsible for sending video, audio and mouse shape.
196 scoped_ptr<AudioPump> audio_pump_; 196 std::unique_ptr<AudioPump> audio_pump_;
197 scoped_ptr<protocol::VideoStream> video_stream_; 197 std::unique_ptr<protocol::VideoStream> video_stream_;
198 scoped_ptr<MouseShapePump> mouse_shape_pump_; 198 std::unique_ptr<MouseShapePump> mouse_shape_pump_;
199 199
200 // The set of all capabilities supported by the client. 200 // The set of all capabilities supported by the client.
201 scoped_ptr<std::string> client_capabilities_; 201 std::unique_ptr<std::string> client_capabilities_;
202 202
203 // The set of all capabilities supported by the host. 203 // The set of all capabilities supported by the host.
204 std::string host_capabilities_; 204 std::string host_capabilities_;
205 205
206 // The set of all capabilities negotiated between client and host. 206 // The set of all capabilities negotiated between client and host.
207 std::string capabilities_; 207 std::string capabilities_;
208 208
209 // Used to inject mouse and keyboard input and handle clipboard events. 209 // Used to inject mouse and keyboard input and handle clipboard events.
210 scoped_ptr<InputInjector> input_injector_; 210 std::unique_ptr<InputInjector> input_injector_;
211 211
212 // Used to apply client-requested changes in screen resolution. 212 // Used to apply client-requested changes in screen resolution.
213 scoped_ptr<ScreenControls> screen_controls_; 213 std::unique_ptr<ScreenControls> screen_controls_;
214 214
215 // The pairing registry for PIN-less authentication. 215 // The pairing registry for PIN-less authentication.
216 scoped_refptr<protocol::PairingRegistry> pairing_registry_; 216 scoped_refptr<protocol::PairingRegistry> pairing_registry_;
217 217
218 // Used to manage extension functionality. 218 // Used to manage extension functionality.
219 scoped_ptr<HostExtensionSessionManager> extension_manager_; 219 std::unique_ptr<HostExtensionSessionManager> extension_manager_;
220 220
221 // Set to true if the client was authenticated successfully. 221 // Set to true if the client was authenticated successfully.
222 bool is_authenticated_; 222 bool is_authenticated_;
223 223
224 // Used to store video channel pause & lossless parameters. 224 // Used to store video channel pause & lossless parameters.
225 bool pause_video_; 225 bool pause_video_;
226 bool lossless_video_encode_; 226 bool lossless_video_encode_;
227 bool lossless_video_color_; 227 bool lossless_video_color_;
228 228
229 // Used to disable callbacks to |this| once DisconnectSession() has been 229 // Used to disable callbacks to |this| once DisconnectSession() has been
230 // called. 230 // called.
231 base::WeakPtrFactory<ClientSessionControl> weak_factory_; 231 base::WeakPtrFactory<ClientSessionControl> weak_factory_;
232 232
233 DISALLOW_COPY_AND_ASSIGN(ClientSession); 233 DISALLOW_COPY_AND_ASSIGN(ClientSession);
234 }; 234 };
235 235
236 } // namespace remoting 236 } // namespace remoting
237 237
238 #endif // REMOTING_HOST_CLIENT_SESSION_H_ 238 #endif // REMOTING_HOST_CLIENT_SESSION_H_
OLDNEW
« no previous file with comments | « remoting/host/chromoting_host_unittest.cc ('k') | remoting/host/client_session.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698