前言
分析代码
H:\webrtc-20210315\webrtc-20210315\webrtc\webrtc-checkout\src\api\proxy.h
// Helper macros to reduce code duplication.#define PROXY_MAP_BOILERPLATE(c) \template <class INTERNAL_CLASS> \class c##ProxyWithInternal; \typedef c##ProxyWithInternal<c##Interface> c##Proxy; \template <class INTERNAL_CLASS> \class c##ProxyWithInternal : public c##Interface { \protected: \typedef c##Interface C; \\public: \const INTERNAL_CLASS* internal() const { return c_; } \INTERNAL_CLASS* internal() { return c_; }
#define PROXY_METHOD0(r, method) \r method() override { \MethodCall<C, r> call(c_, &C::method); \return call.Marshal(RTC_FROM_HERE, primary_thread_); \}
