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 // ChromotingClient is the controller for the Client implementation. | 5 // ChromotingClient is the controller for the Client implementation. |
6 | 6 |
7 #ifndef REMOTING_CLIENT_CHROMOTING_CLIENT_H | 7 #ifndef REMOTING_CLIENT_CHROMOTING_CLIENT_H |
8 #define REMOTING_CLIENT_CHROMOTING_CLIENT_H | 8 #define REMOTING_CLIENT_CHROMOTING_CLIENT_H |
9 | 9 |
10 #include <list> | 10 #include <list> |
11 | 11 |
12 #include "base/task.h" | 12 #include "base/task.h" |
13 #include "remoting/client/client_config.h" | 13 #include "remoting/client/client_config.h" |
14 #include "remoting/client/chromoting_view.h" | 14 #include "remoting/client/chromoting_view.h" |
15 #include "remoting/protocol/client_stub.h" | 15 #include "remoting/protocol/client_stub.h" |
16 #include "remoting/protocol/connection_to_host.h" | 16 #include "remoting/protocol/connection_to_host.h" |
17 #include "remoting/protocol/input_stub.h" | 17 #include "remoting/protocol/input_stub.h" |
18 #include "remoting/protocol/video_stub.h" | 18 #include "remoting/protocol/video_stub.h" |
19 | 19 |
20 class MessageLoop; | 20 class MessageLoop; |
21 | 21 |
22 namespace remoting { | 22 namespace remoting { |
23 | 23 |
24 namespace protocol { | 24 namespace protocol { |
| 25 class LocalLoginStatus; |
25 class NotifyResolutionRequest; | 26 class NotifyResolutionRequest; |
26 } // namespace protocol | 27 } // namespace protocol |
27 | 28 |
28 class ClientContext; | 29 class ClientContext; |
29 class InputHandler; | 30 class InputHandler; |
30 class RectangleUpdateDecoder; | 31 class RectangleUpdateDecoder; |
31 | 32 |
32 // TODO(sergeyu): Move VideoStub implementation to RectangleUpdateDecoder. | 33 // TODO(sergeyu): Move VideoStub implementation to RectangleUpdateDecoder. |
33 class ChromotingClient : public protocol::ConnectionToHost::HostEventCallback, | 34 class ChromotingClient : public protocol::ConnectionToHost::HostEventCallback, |
34 public protocol::ClientStub, | 35 public protocol::ClientStub, |
(...skipping 25 matching lines...) Expand all Loading... |
60 virtual void SetViewport(int x, int y, int width, int height); | 61 virtual void SetViewport(int x, int y, int width, int height); |
61 | 62 |
62 // ConnectionToHost::HostEventCallback implementation. | 63 // ConnectionToHost::HostEventCallback implementation. |
63 virtual void OnConnectionOpened(protocol::ConnectionToHost* conn); | 64 virtual void OnConnectionOpened(protocol::ConnectionToHost* conn); |
64 virtual void OnConnectionClosed(protocol::ConnectionToHost* conn); | 65 virtual void OnConnectionClosed(protocol::ConnectionToHost* conn); |
65 virtual void OnConnectionFailed(protocol::ConnectionToHost* conn); | 66 virtual void OnConnectionFailed(protocol::ConnectionToHost* conn); |
66 | 67 |
67 // ClientStub implementation. | 68 // ClientStub implementation. |
68 virtual void NotifyResolution(const protocol::NotifyResolutionRequest* msg, | 69 virtual void NotifyResolution(const protocol::NotifyResolutionRequest* msg, |
69 Task* done); | 70 Task* done); |
| 71 virtual void BeginSessionResponse(const protocol::LocalLoginStatus* msg, |
| 72 Task* done); |
70 | 73 |
71 // VideoStub implementation. | 74 // VideoStub implementation. |
72 virtual void ProcessVideoPacket(const VideoPacket* packet, Task* done); | 75 virtual void ProcessVideoPacket(const VideoPacket* packet, Task* done); |
73 virtual int GetPendingPackets(); | 76 virtual int GetPendingPackets(); |
74 | 77 |
75 private: | 78 private: |
76 struct QueuedVideoPacket { | 79 struct QueuedVideoPacket { |
77 QueuedVideoPacket(const VideoPacket* packet, Task* done) | 80 QueuedVideoPacket(const VideoPacket* packet, Task* done) |
78 : packet(packet), done(done) { | 81 : packet(packet), done(done) { |
79 } | 82 } |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
119 bool packet_being_processed_; | 122 bool packet_being_processed_; |
120 | 123 |
121 DISALLOW_COPY_AND_ASSIGN(ChromotingClient); | 124 DISALLOW_COPY_AND_ASSIGN(ChromotingClient); |
122 }; | 125 }; |
123 | 126 |
124 } // namespace remoting | 127 } // namespace remoting |
125 | 128 |
126 DISABLE_RUNNABLE_METHOD_REFCOUNT(remoting::ChromotingClient); | 129 DISABLE_RUNNABLE_METHOD_REFCOUNT(remoting::ChromotingClient); |
127 | 130 |
128 #endif // REMOTING_CLIENT_CHROMOTING_CLIENT_H | 131 #endif // REMOTING_CLIENT_CHROMOTING_CLIENT_H |
OLD | NEW |