OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 The WebRTC Project Authors. All rights reserved. | 2 * Copyright 2012 The WebRTC Project Authors. All rights reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 #ifndef WEBRTC_EXAMPLES_PEERCONNECTION_CLIENT_MAIN_WND_H_ | 11 #ifndef WEBRTC_EXAMPLES_PEERCONNECTION_CLIENT_MAIN_WND_H_ |
12 #define WEBRTC_EXAMPLES_PEERCONNECTION_CLIENT_MAIN_WND_H_ | 12 #define WEBRTC_EXAMPLES_PEERCONNECTION_CLIENT_MAIN_WND_H_ |
13 #pragma once | 13 #pragma once |
14 | 14 |
15 #include <map> | 15 #include <map> |
| 16 #include <memory> |
16 #include <string> | 17 #include <string> |
17 | 18 |
18 #include "webrtc/api/mediastreaminterface.h" | 19 #include "webrtc/api/mediastreaminterface.h" |
19 #include "webrtc/base/win32.h" | 20 #include "webrtc/base/win32.h" |
20 #include "webrtc/examples/peerconnection/client/peer_connection_client.h" | 21 #include "webrtc/examples/peerconnection/client/peer_connection_client.h" |
21 #include "webrtc/media/base/mediachannel.h" | 22 #include "webrtc/media/base/mediachannel.h" |
22 #include "webrtc/media/base/videocommon.h" | 23 #include "webrtc/media/base/videocommon.h" |
23 #include "webrtc/media/base/videoframe.h" | 24 #include "webrtc/media/base/videoframe.h" |
24 | 25 |
25 class MainWndCallback { | 26 class MainWndCallback { |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
124 protected: | 125 protected: |
125 void SetSize(int width, int height); | 126 void SetSize(int width, int height); |
126 | 127 |
127 enum { | 128 enum { |
128 SET_SIZE, | 129 SET_SIZE, |
129 RENDER_FRAME, | 130 RENDER_FRAME, |
130 }; | 131 }; |
131 | 132 |
132 HWND wnd_; | 133 HWND wnd_; |
133 BITMAPINFO bmi_; | 134 BITMAPINFO bmi_; |
134 rtc::scoped_ptr<uint8_t[]> image_; | 135 std::unique_ptr<uint8_t[]> image_; |
135 CRITICAL_SECTION buffer_lock_; | 136 CRITICAL_SECTION buffer_lock_; |
136 rtc::scoped_refptr<webrtc::VideoTrackInterface> rendered_track_; | 137 rtc::scoped_refptr<webrtc::VideoTrackInterface> rendered_track_; |
137 }; | 138 }; |
138 | 139 |
139 // A little helper class to make sure we always to proper locking and | 140 // A little helper class to make sure we always to proper locking and |
140 // unlocking when working with VideoRenderer buffers. | 141 // unlocking when working with VideoRenderer buffers. |
141 template <typename T> | 142 template <typename T> |
142 class AutoLock { | 143 class AutoLock { |
143 public: | 144 public: |
144 explicit AutoLock(T* obj) : obj_(obj) { obj_->Lock(); } | 145 explicit AutoLock(T* obj) : obj_(obj) { obj_->Lock(); } |
(...skipping 24 matching lines...) Expand all Loading... |
169 void CreateChildWindow(HWND* wnd, ChildWindowID id, const wchar_t* class_name, | 170 void CreateChildWindow(HWND* wnd, ChildWindowID id, const wchar_t* class_name, |
170 DWORD control_style, DWORD ex_style); | 171 DWORD control_style, DWORD ex_style); |
171 void CreateChildWindows(); | 172 void CreateChildWindows(); |
172 | 173 |
173 void LayoutConnectUI(bool show); | 174 void LayoutConnectUI(bool show); |
174 void LayoutPeerListUI(bool show); | 175 void LayoutPeerListUI(bool show); |
175 | 176 |
176 void HandleTabbing(); | 177 void HandleTabbing(); |
177 | 178 |
178 private: | 179 private: |
179 rtc::scoped_ptr<VideoRenderer> local_renderer_; | 180 std::unique_ptr<VideoRenderer> local_renderer_; |
180 rtc::scoped_ptr<VideoRenderer> remote_renderer_; | 181 std::unique_ptr<VideoRenderer> remote_renderer_; |
181 UI ui_; | 182 UI ui_; |
182 HWND wnd_; | 183 HWND wnd_; |
183 DWORD ui_thread_id_; | 184 DWORD ui_thread_id_; |
184 HWND edit1_; | 185 HWND edit1_; |
185 HWND edit2_; | 186 HWND edit2_; |
186 HWND label1_; | 187 HWND label1_; |
187 HWND label2_; | 188 HWND label2_; |
188 HWND button_; | 189 HWND button_; |
189 HWND listbox_; | 190 HWND listbox_; |
190 bool destroyed_; | 191 bool destroyed_; |
191 void* nested_msg_; | 192 void* nested_msg_; |
192 MainWndCallback* callback_; | 193 MainWndCallback* callback_; |
193 static ATOM wnd_class_; | 194 static ATOM wnd_class_; |
194 std::string server_; | 195 std::string server_; |
195 std::string port_; | 196 std::string port_; |
196 bool auto_connect_; | 197 bool auto_connect_; |
197 bool auto_call_; | 198 bool auto_call_; |
198 }; | 199 }; |
199 #endif // WIN32 | 200 #endif // WIN32 |
200 | 201 |
201 #endif // WEBRTC_EXAMPLES_PEERCONNECTION_CLIENT_MAIN_WND_H_ | 202 #endif // WEBRTC_EXAMPLES_PEERCONNECTION_CLIENT_MAIN_WND_H_ |
OLD | NEW |