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 |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
73 virtual ClientStub* client_stub(); | 73 virtual ClientStub* client_stub(); |
74 | 74 |
75 // These two setters should be called before Init(). | 75 // These two setters should be called before Init(). |
76 virtual void set_host_stub(HostStub* host_stub); | 76 virtual void set_host_stub(HostStub* host_stub); |
77 virtual void set_input_stub(InputStub* input_stub); | 77 virtual void set_input_stub(InputStub* input_stub); |
78 | 78 |
79 private: | 79 private: |
80 // Callback for protocol Session. | 80 // Callback for protocol Session. |
81 void OnSessionStateChange(Session::State state); | 81 void OnSessionStateChange(Session::State state); |
82 | 82 |
83 // Callback for VideoReader::Init(). | 83 // Callback for channel initialization. |
84 void OnVideoInitialized(bool successful); | 84 void OnChannelInitialized(bool successful); |
85 | 85 |
86 void NotifyIfChannelsReady(); | 86 void NotifyIfChannelsReady(); |
87 | 87 |
88 void CloseOnError(); | 88 void CloseOnError(); |
89 | 89 |
90 // Stops writing in the channels. | 90 // Stops writing in the channels. |
91 void CloseChannels(); | 91 void CloseChannels(); |
92 | 92 |
93 // Event handler for handling events sent from this object. | 93 // Event handler for handling events sent from this object. |
94 EventHandler* handler_; | 94 EventHandler* handler_; |
95 | 95 |
96 // Stubs that are called for incoming messages. | 96 // Stubs that are called for incoming messages. |
97 HostStub* host_stub_; | 97 HostStub* host_stub_; |
98 InputStub* input_stub_; | 98 InputStub* input_stub_; |
99 | 99 |
100 // The libjingle channel used to send and receive data from the remote client. | 100 // The libjingle channel used to send and receive data from the remote client. |
101 scoped_ptr<Session> session_; | 101 scoped_ptr<Session> session_; |
102 | 102 |
| 103 scoped_ptr<HostControlDispatcher> control_dispatcher_; |
| 104 scoped_ptr<HostEventDispatcher> event_dispatcher_; |
103 scoped_ptr<VideoWriter> video_writer_; | 105 scoped_ptr<VideoWriter> video_writer_; |
104 scoped_ptr<HostControlDispatcher> control_dispatcher_; | |
105 scoped_ptr<HostEventDispatcher> input_dispatcher_; | |
106 | |
107 // State of the channels. | |
108 bool control_connected_; | |
109 bool input_connected_; | |
110 bool video_connected_; | |
111 | 106 |
112 DISALLOW_COPY_AND_ASSIGN(ConnectionToClient); | 107 DISALLOW_COPY_AND_ASSIGN(ConnectionToClient); |
113 }; | 108 }; |
114 | 109 |
115 } // namespace protocol | 110 } // namespace protocol |
116 } // namespace remoting | 111 } // namespace remoting |
117 | 112 |
118 #endif // REMOTING_PROTOCOL_CONNECTION_TO_CLIENT_H_ | 113 #endif // REMOTING_PROTOCOL_CONNECTION_TO_CLIENT_H_ |
OLD | NEW |