| OLD | NEW |
| 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 414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 425 WORKER_PROXY_MAP_BOILERPLATE(c) \ | 425 WORKER_PROXY_MAP_BOILERPLATE(c) \ |
| 426 REFCOUNTED_PROXY_MAP_BOILERPLATE(c) \ | 426 REFCOUNTED_PROXY_MAP_BOILERPLATE(c) \ |
| 427 public: \ | 427 public: \ |
| 428 static rtc::scoped_refptr<c##ProxyWithInternal> Create( \ | 428 static rtc::scoped_refptr<c##ProxyWithInternal> Create( \ |
| 429 rtc::Thread* signaling_thread, rtc::Thread* worker_thread, \ | 429 rtc::Thread* signaling_thread, rtc::Thread* worker_thread, \ |
| 430 INTERNAL_CLASS* c) { \ | 430 INTERNAL_CLASS* c) { \ |
| 431 return new rtc::RefCountedObject<c##ProxyWithInternal>(signaling_thread, \ | 431 return new rtc::RefCountedObject<c##ProxyWithInternal>(signaling_thread, \ |
| 432 worker_thread, c); \ | 432 worker_thread, c); \ |
| 433 } | 433 } |
| 434 | 434 |
| 435 #define BEGIN_OWNED_PROXY_MAP(c) \ | 435 #define BEGIN_OWNED_PROXY_MAP(c) \ |
| 436 PROXY_MAP_BOILERPLATE(c) \ | 436 PROXY_MAP_BOILERPLATE(c) \ |
| 437 WORKER_PROXY_MAP_BOILERPLATE(c) \ | 437 WORKER_PROXY_MAP_BOILERPLATE(c) \ |
| 438 OWNED_PROXY_MAP_BOILERPLATE(c) \ | 438 OWNED_PROXY_MAP_BOILERPLATE(c) \ |
| 439 public: \ | 439 public: \ |
| 440 static std::unique_ptr<c##ProxyWithInternal> Create( \ | 440 static std::unique_ptr<c##Interface> Create(rtc::Thread* signaling_thread, \ |
| 441 rtc::Thread* signaling_thread, rtc::Thread* worker_thread, \ | 441 rtc::Thread* worker_thread, \ |
| 442 INTERNAL_CLASS* c) { \ | 442 INTERNAL_CLASS* c) { \ |
| 443 return std::unique_ptr<c##ProxyWithInternal>( \ | 443 return std::unique_ptr<c##Interface>( \ |
| 444 new c##ProxyWithInternal(signaling_thread, worker_thread, c)); \ | 444 new c##ProxyWithInternal(signaling_thread, worker_thread, c)); \ |
| 445 } | 445 } |
| 446 | 446 |
| 447 #define PROXY_SIGNALING_THREAD_DESTRUCTOR() \ | 447 #define PROXY_SIGNALING_THREAD_DESTRUCTOR() \ |
| 448 private: \ | 448 private: \ |
| 449 rtc::Thread* destructor_thread() const { return signaling_thread_; } \ | 449 rtc::Thread* destructor_thread() const { return signaling_thread_; } \ |
| 450 \ | 450 \ |
| 451 public: | 451 public: |
| 452 | 452 |
| 453 #define PROXY_WORKER_THREAD_DESTRUCTOR() \ | 453 #define PROXY_WORKER_THREAD_DESTRUCTOR() \ |
| 454 private: \ | 454 private: \ |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 542 return call.Marshal(RTC_FROM_HERE, worker_thread_); \ | 542 return call.Marshal(RTC_FROM_HERE, worker_thread_); \ |
| 543 } | 543 } |
| 544 | 544 |
| 545 #define PROXY_WORKER_CONSTMETHOD2(r, method, t1, t2) \ | 545 #define PROXY_WORKER_CONSTMETHOD2(r, method, t1, t2) \ |
| 546 r method(t1 a1, t2 a2) const override { \ | 546 r method(t1 a1, t2 a2) const override { \ |
| 547 ConstMethodCall2<C, r, t1, t2> call(c_.get(), &C::method, std::move(a1), \ | 547 ConstMethodCall2<C, r, t1, t2> call(c_.get(), &C::method, std::move(a1), \ |
| 548 std::move(a2)); \ | 548 std::move(a2)); \ |
| 549 return call.Marshal(RTC_FROM_HERE, worker_thread_); \ | 549 return call.Marshal(RTC_FROM_HERE, worker_thread_); \ |
| 550 } | 550 } |
| 551 | 551 |
| 552 #define PROXY_WORKER_METHOD3(r, method, t1, t2, t3) \ |
| 553 r method(t1 a1, t2 a2, t3 a3) override { \ |
| 554 MethodCall3<C, r, t1, t2, t3> call(c_.get(), &C::method, std::move(a1), \ |
| 555 std::move(a2), std::move(a3)); \ |
| 556 return call.Marshal(RTC_FROM_HERE, worker_thread_); \ |
| 557 } |
| 558 |
| 559 #define PROXY_WORKER_CONSTMETHOD3(r, method, t1, t2) \ |
| 560 r method(t1 a1, t2 a2, t3 a3) const override { \ |
| 561 ConstMethodCall3<C, r, t1, t2, t3> call( \ |
| 562 c_.get(), &C::method, std::move(a1), std::move(a2), std::move(a3)); \ |
| 563 return call.Marshal(RTC_FROM_HERE, worker_thread_); \ |
| 564 } |
| 565 |
| 552 #define END_PROXY_MAP() \ | 566 #define END_PROXY_MAP() \ |
| 553 } \ | 567 } \ |
| 554 ; | 568 ; |
| 555 | 569 |
| 556 } // namespace webrtc | 570 } // namespace webrtc |
| 557 | 571 |
| 558 #endif // WEBRTC_API_PROXY_H_ | 572 #endif // WEBRTC_API_PROXY_H_ |
| OLD | NEW |