WebrtcGlobalChild.h (1330B)
1 /* This Source Code Form is subject to the terms of the Mozilla Public 2 * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 5 #ifndef _WEBRTC_GLOBAL_CHILD_H_ 6 #define _WEBRTC_GLOBAL_CHILD_H_ 7 8 #include "mozilla/dom/PWebrtcGlobalChild.h" 9 10 namespace mozilla::dom { 11 12 class WebrtcGlobalChild : public PWebrtcGlobalChild { 13 friend class ContentChild; 14 15 bool mShutdown; 16 17 MOZ_IMPLICIT WebrtcGlobalChild(); 18 virtual void ActorDestroy(ActorDestroyReason aWhy) override; 19 20 virtual mozilla::ipc::IPCResult RecvGetStats( 21 const nsAString& aPcIdFilter, GetStatsResolver&& aResolve) override; 22 virtual mozilla::ipc::IPCResult RecvClearStats() override; 23 // MOZ_CAN_RUN_SCRIPT_BOUNDARY because we can't do MOZ_CAN_RUN_SCRIPT in 24 // ipdl-generated things yet. 25 MOZ_CAN_RUN_SCRIPT_BOUNDARY 26 virtual mozilla::ipc::IPCResult RecvGetLog( 27 GetLogResolver&& aResolve) override; 28 virtual mozilla::ipc::IPCResult RecvClearLog() override; 29 virtual mozilla::ipc::IPCResult RecvSetAecLogging( 30 const bool& aEnable) override; 31 32 static WebrtcGlobalChild* GetOrSet(const Maybe<WebrtcGlobalChild*>& aChild); 33 34 public: 35 virtual ~WebrtcGlobalChild(); 36 static WebrtcGlobalChild* Get(); 37 }; 38 39 } // namespace mozilla::dom 40 41 #endif // _WEBRTC_GLOBAL_CHILD_H_