OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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_CHROMOTING_HOST_H_ | 5 #ifndef REMOTING_CHROMOTING_HOST_H_ |
6 #define REMOTING_CHROMOTING_HOST_H_ | 6 #define REMOTING_CHROMOTING_HOST_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/thread.h" | 10 #include "base/thread.h" |
11 #include "remoting/base/encoder.h" | 11 #include "remoting/base/encoder.h" |
12 #include "remoting/host/access_verifier.h" | 12 #include "remoting/host/access_verifier.h" |
13 #include "remoting/host/capturer.h" | 13 #include "remoting/host/capturer.h" |
14 #include "remoting/host/heartbeat_sender.h" | 14 #include "remoting/host/heartbeat_sender.h" |
15 #include "remoting/jingle_glue/jingle_client.h" | 15 #include "remoting/jingle_glue/jingle_client.h" |
16 #include "remoting/jingle_glue/jingle_thread.h" | 16 #include "remoting/jingle_glue/jingle_thread.h" |
17 #include "remoting/protocol/input_stub.h" | |
18 #include "remoting/protocol/session_manager.h" | 17 #include "remoting/protocol/session_manager.h" |
19 #include "remoting/protocol/connection_to_client.h" | 18 #include "remoting/protocol/connection_to_client.h" |
20 | 19 |
21 class Task; | 20 class Task; |
22 | 21 |
23 namespace remoting { | 22 namespace remoting { |
24 | 23 |
25 namespace protocol { | 24 namespace protocol { |
26 class ConnectionToClient; | 25 class ConnectionToClient; |
| 26 class HostStub; |
| 27 class InputStub; |
27 class SessionConfig; | 28 class SessionConfig; |
28 } // namespace protocol | 29 } // namespace protocol |
29 | 30 |
30 class Capturer; | 31 class Capturer; |
31 class ChromotingHostContext; | 32 class ChromotingHostContext; |
32 class Encoder; | 33 class Encoder; |
33 class MutableHostConfig; | 34 class MutableHostConfig; |
34 class SessionManager; | 35 class SessionManager; |
35 | 36 |
36 // A class to implement the functionality of a host process. | 37 // A class to implement the functionality of a host process. |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 // Capturer to be used by SessionManager. Once the SessionManager is | 127 // Capturer to be used by SessionManager. Once the SessionManager is |
127 // constructed this is set to NULL. | 128 // constructed this is set to NULL. |
128 scoped_ptr<Capturer> capturer_; | 129 scoped_ptr<Capturer> capturer_; |
129 | 130 |
130 // constructed this is set to NULL. | 131 // constructed this is set to NULL. |
131 scoped_ptr<Encoder> encoder_; | 132 scoped_ptr<Encoder> encoder_; |
132 | 133 |
133 // InputStub in the host executes input events received from the client. | 134 // InputStub in the host executes input events received from the client. |
134 scoped_ptr<protocol::InputStub> input_stub_; | 135 scoped_ptr<protocol::InputStub> input_stub_; |
135 | 136 |
| 137 // HostStub in the host executes control events received from the client. |
| 138 scoped_ptr<protocol::HostStub> host_stub_; |
| 139 |
136 // The libjingle client. This is used to connect to the talk network to | 140 // The libjingle client. This is used to connect to the talk network to |
137 // receive connection requests from chromoting client. | 141 // receive connection requests from chromoting client. |
138 scoped_refptr<JingleClient> jingle_client_; | 142 scoped_refptr<JingleClient> jingle_client_; |
139 | 143 |
140 scoped_refptr<protocol::SessionManager> session_manager_; | 144 scoped_refptr<protocol::SessionManager> session_manager_; |
141 | 145 |
142 // Objects that takes care of sending heartbeats to the chromoting bot. | 146 // Objects that takes care of sending heartbeats to the chromoting bot. |
143 scoped_refptr<HeartbeatSender> heartbeat_sender_; | 147 scoped_refptr<HeartbeatSender> heartbeat_sender_; |
144 | 148 |
145 AccessVerifier access_verifier_; | 149 AccessVerifier access_verifier_; |
(...skipping 16 matching lines...) Expand all Loading... |
162 | 166 |
163 // Lock is to lock the access to |state_|. | 167 // Lock is to lock the access to |state_|. |
164 Lock lock_; | 168 Lock lock_; |
165 | 169 |
166 DISALLOW_COPY_AND_ASSIGN(ChromotingHost); | 170 DISALLOW_COPY_AND_ASSIGN(ChromotingHost); |
167 }; | 171 }; |
168 | 172 |
169 } // namespace remoting | 173 } // namespace remoting |
170 | 174 |
171 #endif // REMOTING_HOST_CHROMOTING_HOST_H_ | 175 #endif // REMOTING_HOST_CHROMOTING_HOST_H_ |
OLD | NEW |