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_CHROMOTING_HOST_H_ | 5 #ifndef REMOTING_HOST_CHROMOTING_HOST_H_ |
6 #define REMOTING_HOST_CHROMOTING_HOST_H_ | 6 #define REMOTING_HOST_CHROMOTING_HOST_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 13 matching lines...) Expand all Loading... |
24 #include "remoting/protocol/connection_to_client.h" | 24 #include "remoting/protocol/connection_to_client.h" |
25 | 25 |
26 namespace remoting { | 26 namespace remoting { |
27 | 27 |
28 namespace protocol { | 28 namespace protocol { |
29 class InputStub; | 29 class InputStub; |
30 class SessionConfig; | 30 class SessionConfig; |
31 class CandidateSessionConfig; | 31 class CandidateSessionConfig; |
32 } // namespace protocol | 32 } // namespace protocol |
33 | 33 |
| 34 class AudioEncoder; |
34 class AudioScheduler; | 35 class AudioScheduler; |
35 class ChromotingHostContext; | 36 class ChromotingHostContext; |
36 class DesktopEnvironment; | 37 class DesktopEnvironment; |
37 class Encoder; | 38 class Encoder; |
38 class ScreenRecorder; | 39 class ScreenRecorder; |
39 class VideoFrameCapturer; | 40 class VideoFrameCapturer; |
40 | 41 |
41 // A class to implement the functionality of a host process. | 42 // A class to implement the functionality of a host process. |
42 // | 43 // |
43 // Here's the work flow of this class: | 44 // Here's the work flow of this class: |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 enum State { | 159 enum State { |
159 kInitial, | 160 kInitial, |
160 kStarted, | 161 kStarted, |
161 kStopping, | 162 kStopping, |
162 kStopped, | 163 kStopped, |
163 }; | 164 }; |
164 | 165 |
165 // Creates encoder for the specified configuration. | 166 // Creates encoder for the specified configuration. |
166 static Encoder* CreateEncoder(const protocol::SessionConfig& config); | 167 static Encoder* CreateEncoder(const protocol::SessionConfig& config); |
167 | 168 |
| 169 // Creates an audio encoder for the specified configuration. |
| 170 static scoped_ptr<AudioEncoder> CreateAudioEncoder( |
| 171 const protocol::SessionConfig& config); |
| 172 |
168 virtual ~ChromotingHost(); | 173 virtual ~ChromotingHost(); |
169 | 174 |
170 void StopScreenRecorder(); | 175 void StopScreenRecorder(); |
171 void StopAudioScheduler(); | 176 void StopAudioScheduler(); |
172 void OnRecorderStopped(); | 177 void OnRecorderStopped(); |
173 | 178 |
174 // Called from Shutdown() or OnScreenRecorderStopped() to finish shutdown. | 179 // Called from Shutdown() or OnScreenRecorderStopped() to finish shutdown. |
175 void ShutdownFinish(); | 180 void ShutdownFinish(); |
176 | 181 |
177 // Unless specified otherwise all members of this class must be | 182 // Unless specified otherwise all members of this class must be |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
224 | 229 |
225 // The maximum duration of any session. | 230 // The maximum duration of any session. |
226 base::TimeDelta max_session_duration_; | 231 base::TimeDelta max_session_duration_; |
227 | 232 |
228 DISALLOW_COPY_AND_ASSIGN(ChromotingHost); | 233 DISALLOW_COPY_AND_ASSIGN(ChromotingHost); |
229 }; | 234 }; |
230 | 235 |
231 } // namespace remoting | 236 } // namespace remoting |
232 | 237 |
233 #endif // REMOTING_HOST_CHROMOTING_HOST_H_ | 238 #endif // REMOTING_HOST_CHROMOTING_HOST_H_ |
OLD | NEW |