OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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_PROTOCOL_CONNECTION_TO_CLIENT_H_ | 5 #ifndef REMOTING_PROTOCOL_CONNECTION_TO_CLIENT_H_ |
6 #define REMOTING_PROTOCOL_CONNECTION_TO_CLIENT_H_ | 6 #define REMOTING_PROTOCOL_CONNECTION_TO_CLIENT_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "base/memory/scoped_ptr.h" | 11 #include "base/memory/scoped_ptr.h" |
12 #include "base/synchronization/lock.h" | 12 #include "base/synchronization/lock.h" |
13 #include "base/threading/non_thread_safe.h" | 13 #include "base/threading/non_thread_safe.h" |
14 #include "remoting/protocol/session.h" | 14 #include "remoting/protocol/session.h" |
15 #include "remoting/protocol/video_writer.h" | 15 #include "remoting/protocol/video_writer.h" |
16 | 16 |
17 namespace base { | |
18 class MessageLoopProxy; | |
19 } // namespace base | |
20 | |
21 namespace remoting { | 17 namespace remoting { |
22 namespace protocol { | 18 namespace protocol { |
23 | 19 |
24 class ClientControlSender; | 20 class ClientControlSender; |
25 class ClientStub; | 21 class ClientStub; |
26 class HostStub; | 22 class HostStub; |
27 class InputStub; | 23 class InputStub; |
28 class HostMessageDispatcher; | 24 class HostMessageDispatcher; |
29 | 25 |
30 // This class represents a remote viewer connection to the chromoting | 26 // This class represents a remote viewer connection to the chromoting |
(...skipping 14 matching lines...) Expand all Loading... |
45 // Called when the network connection has failed. | 41 // Called when the network connection has failed. |
46 virtual void OnConnectionFailed(ConnectionToClient* connection) = 0; | 42 virtual void OnConnectionFailed(ConnectionToClient* connection) = 0; |
47 | 43 |
48 // Called when sequence number is updated. | 44 // Called when sequence number is updated. |
49 virtual void OnSequenceNumberUpdated(ConnectionToClient* connection, | 45 virtual void OnSequenceNumberUpdated(ConnectionToClient* connection, |
50 int64 sequence_number) = 0; | 46 int64 sequence_number) = 0; |
51 }; | 47 }; |
52 | 48 |
53 // Constructs a ConnectionToClient object for the |session|. Takes | 49 // Constructs a ConnectionToClient object for the |session|. Takes |
54 // ownership of |session|. | 50 // ownership of |session|. |
55 ConnectionToClient(Session* session); | 51 explicit ConnectionToClient(Session* session); |
56 virtual ~ConnectionToClient(); | 52 virtual ~ConnectionToClient(); |
57 | 53 |
58 // Set |event_handler| for connection events. |event_handler| is | 54 // Set |event_handler| for connection events. |event_handler| is |
59 // guaranteed to be used only on the network thread. Must be called | 55 // guaranteed to be used only on the network thread. Must be called |
60 // once when this object is created. | 56 // once when this object is created. |
61 void SetEventHandler(EventHandler* event_handler); | 57 void SetEventHandler(EventHandler* event_handler); |
62 | 58 |
63 // Returns the connection in use. | 59 // Returns the connection in use. |
64 virtual Session* session(); | 60 virtual Session* session(); |
65 | 61 |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
116 bool input_connected_; | 112 bool input_connected_; |
117 bool video_connected_; | 113 bool video_connected_; |
118 | 114 |
119 DISALLOW_COPY_AND_ASSIGN(ConnectionToClient); | 115 DISALLOW_COPY_AND_ASSIGN(ConnectionToClient); |
120 }; | 116 }; |
121 | 117 |
122 } // namespace protocol | 118 } // namespace protocol |
123 } // namespace remoting | 119 } // namespace remoting |
124 | 120 |
125 #endif // REMOTING_PROTOCOL_CONNECTION_TO_CLIENT_H_ | 121 #endif // REMOTING_PROTOCOL_CONNECTION_TO_CLIENT_H_ |
OLD | NEW |