Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(100)

Side by Side Diff: webrtc/api/proxy.h

Issue 2675173003: Adding "adapter" ORTC objects on top of ChannelManager/BaseChannel/etc. (Closed)
Patch Set: Adding OrtcFactory unit tests. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright 2013 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2013 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
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after
431 WORKER_PROXY_MAP_BOILERPLATE(c) \ 431 WORKER_PROXY_MAP_BOILERPLATE(c) \
432 REFCOUNTED_PROXY_MAP_BOILERPLATE(c) \ 432 REFCOUNTED_PROXY_MAP_BOILERPLATE(c) \
433 public: \ 433 public: \
434 static rtc::scoped_refptr<c##ProxyWithInternal> Create( \ 434 static rtc::scoped_refptr<c##ProxyWithInternal> Create( \
435 rtc::Thread* signaling_thread, rtc::Thread* worker_thread, \ 435 rtc::Thread* signaling_thread, rtc::Thread* worker_thread, \
436 INTERNAL_CLASS* c) { \ 436 INTERNAL_CLASS* c) { \
437 return new rtc::RefCountedObject<c##ProxyWithInternal>(signaling_thread, \ 437 return new rtc::RefCountedObject<c##ProxyWithInternal>(signaling_thread, \
438 worker_thread, c); \ 438 worker_thread, c); \
439 } 439 }
440 440
441 #define BEGIN_OWNED_PROXY_MAP(c) \ 441 #define BEGIN_OWNED_PROXY_MAP(c) \
442 PROXY_MAP_BOILERPLATE(c) \ 442 PROXY_MAP_BOILERPLATE(c) \
443 WORKER_PROXY_MAP_BOILERPLATE(c) \ 443 WORKER_PROXY_MAP_BOILERPLATE(c) \
444 OWNED_PROXY_MAP_BOILERPLATE(c) \ 444 OWNED_PROXY_MAP_BOILERPLATE(c) \
445 public: \ 445 public: \
446 static std::unique_ptr<c##ProxyWithInternal> Create( \ 446 static std::unique_ptr<c##Interface> Create(rtc::Thread* signaling_thread, \
447 rtc::Thread* signaling_thread, rtc::Thread* worker_thread, \ 447 rtc::Thread* worker_thread, \
448 INTERNAL_CLASS* c) { \ 448 INTERNAL_CLASS* c) { \
449 return std::unique_ptr<c##ProxyWithInternal>( \ 449 return std::unique_ptr<c##Interface>( \
450 new c##ProxyWithInternal(signaling_thread, worker_thread, c)); \ 450 new c##ProxyWithInternal(signaling_thread, worker_thread, c)); \
451 } 451 }
452 452
453 #define PROXY_SIGNALING_THREAD_DESTRUCTOR() \ 453 #define PROXY_SIGNALING_THREAD_DESTRUCTOR() \
454 private: \ 454 private: \
455 rtc::Thread* destructor_thread() const { return signaling_thread_; } \ 455 rtc::Thread* destructor_thread() const { return signaling_thread_; } \
456 \ 456 \
457 public: // NOLINTNEXTLINE 457 public: // NOLINTNEXTLINE
458 458
459 #define PROXY_WORKER_THREAD_DESTRUCTOR() \ 459 #define PROXY_WORKER_THREAD_DESTRUCTOR() \
460 private: \ 460 private: \
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
548 return call.Marshal(RTC_FROM_HERE, worker_thread_); \ 548 return call.Marshal(RTC_FROM_HERE, worker_thread_); \
549 } 549 }
550 550
551 #define PROXY_WORKER_CONSTMETHOD2(r, method, t1, t2) \ 551 #define PROXY_WORKER_CONSTMETHOD2(r, method, t1, t2) \
552 r method(t1 a1, t2 a2) const override { \ 552 r method(t1 a1, t2 a2) const override { \
553 ConstMethodCall2<C, r, t1, t2> call(c_.get(), &C::method, std::move(a1), \ 553 ConstMethodCall2<C, r, t1, t2> call(c_.get(), &C::method, std::move(a1), \
554 std::move(a2)); \ 554 std::move(a2)); \
555 return call.Marshal(RTC_FROM_HERE, worker_thread_); \ 555 return call.Marshal(RTC_FROM_HERE, worker_thread_); \
556 } 556 }
557 557
558 #define PROXY_WORKER_METHOD3(r, method, t1, t2, t3) \
559 r method(t1 a1, t2 a2, t3 a3) override { \
560 MethodCall3<C, r, t1, t2, t3> call(c_.get(), &C::method, std::move(a1), \
561 std::move(a2), std::move(a3)); \
562 return call.Marshal(RTC_FROM_HERE, worker_thread_); \
563 }
564
565 #define PROXY_WORKER_CONSTMETHOD3(r, method, t1, t2) \
566 r method(t1 a1, t2 a2, t3 a3) const override { \
567 ConstMethodCall3<C, r, t1, t2, t3> call( \
568 c_.get(), &C::method, std::move(a1), std::move(a2), std::move(a3)); \
569 return call.Marshal(RTC_FROM_HERE, worker_thread_); \
570 }
571
558 } // namespace webrtc 572 } // namespace webrtc
559 573
560 #endif // WEBRTC_API_PROXY_H_ 574 #endif // WEBRTC_API_PROXY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698