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" |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 // | 56 // |
57 // 3. When the user is disconencted, we will pause the SessionManager | 57 // 3. When the user is disconencted, we will pause the SessionManager |
58 // and try to terminate the threads we have created. This will allow | 58 // and try to terminate the threads we have created. This will allow |
59 // all pending tasks to complete. After all of that completed we | 59 // all pending tasks to complete. After all of that completed we |
60 // return to the idle state. We then go to step (2) if there a new | 60 // return to the idle state. We then go to step (2) if there a new |
61 // incoming connection. | 61 // incoming connection. |
62 class ChromotingHost : public base::RefCountedThreadSafe<ChromotingHost>, | 62 class ChromotingHost : public base::RefCountedThreadSafe<ChromotingHost>, |
63 public protocol::ConnectionToClient::EventHandler, | 63 public protocol::ConnectionToClient::EventHandler, |
64 public JingleClient::Callback { | 64 public JingleClient::Callback { |
65 public: | 65 public: |
66 ChromotingHost(ChromotingHostContext* context, MutableHostConfig* config, | 66 ChromotingHost(ChromotingHostContext* context, MutableHostConfig* config); |
67 Capturer* capturer, protocol::InputStub* input_stub); | |
68 virtual ~ChromotingHost(); | 67 virtual ~ChromotingHost(); |
69 | 68 |
70 // Asynchronously start the host process. | 69 // Asynchronously start the host process. |
71 // | 70 // |
72 // After this is invoked, the host process will connect to the talk | 71 // After this is invoked, the host process will connect to the talk |
73 // network and start listening for incoming connections. | 72 // network and start listening for incoming connections. |
74 // | 73 // |
75 // |shutdown_task| is called if Start() has failed ot Shutdown() is called | 74 // |shutdown_task| is called if Start() has failed ot Shutdown() is called |
76 // and all related operations are completed. | 75 // and all related operations are completed. |
77 // | 76 // |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
166 | 165 |
167 // Lock is to lock the access to |state_|. | 166 // Lock is to lock the access to |state_|. |
168 Lock lock_; | 167 Lock lock_; |
169 | 168 |
170 DISALLOW_COPY_AND_ASSIGN(ChromotingHost); | 169 DISALLOW_COPY_AND_ASSIGN(ChromotingHost); |
171 }; | 170 }; |
172 | 171 |
173 } // namespace remoting | 172 } // namespace remoting |
174 | 173 |
175 #endif // REMOTING_HOST_CHROMOTING_HOST_H_ | 174 #endif // REMOTING_HOST_CHROMOTING_HOST_H_ |
OLD | NEW |