ClientManagerParent.h (2272B)
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */ 3 /* This Source Code Form is subject to the terms of the Mozilla Public 4 * License, v. 2.0. If a copy of the MPL was not distributed with this 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 #ifndef _mozilla_dom_ClientManagerParent_h 7 #define _mozilla_dom_ClientManagerParent_h 8 9 #include "mozilla/dom/PClientManagerParent.h" 10 11 namespace mozilla::dom { 12 13 class ClientManagerService; 14 15 class ClientManagerParent final : public PClientManagerParent { 16 RefPtr<ClientManagerService> mService; 17 18 ~ClientManagerParent(); 19 20 // PClientManagerParent interface 21 mozilla::ipc::IPCResult RecvTeardown() override; 22 23 void ActorDestroy(ActorDestroyReason aReason) override; 24 25 already_AddRefed<PClientHandleParent> AllocPClientHandleParent( 26 const IPCClientInfo& aClientInfo) override; 27 28 mozilla::ipc::IPCResult RecvPClientHandleConstructor( 29 PClientHandleParent* aActor, const IPCClientInfo& aClientInfo) override; 30 31 PClientManagerOpParent* AllocPClientManagerOpParent( 32 const ClientOpConstructorArgs& aArgs) override; 33 34 bool DeallocPClientManagerOpParent(PClientManagerOpParent* aActor) override; 35 36 mozilla::ipc::IPCResult RecvPClientManagerOpConstructor( 37 PClientManagerOpParent* aActor, 38 const ClientOpConstructorArgs& aArgs) override; 39 40 PClientNavigateOpParent* AllocPClientNavigateOpParent( 41 const ClientNavigateOpConstructorArgs& aArgs) override; 42 43 bool DeallocPClientNavigateOpParent(PClientNavigateOpParent* aActor) override; 44 45 already_AddRefed<PClientSourceParent> AllocPClientSourceParent( 46 const ClientSourceConstructorArgs& aArgs) override; 47 48 mozilla::ipc::IPCResult RecvPClientSourceConstructor( 49 PClientSourceParent* aActor, 50 const ClientSourceConstructorArgs& aArgs) override; 51 52 mozilla::ipc::IPCResult RecvExpectFutureClientSource( 53 const IPCClientInfo& aClientInfo) override; 54 55 mozilla::ipc::IPCResult RecvForgetFutureClientSource( 56 const IPCClientInfo& aClientInfo) override; 57 58 public: 59 NS_INLINE_DECL_REFCOUNTING(ClientManagerParent, override) 60 61 ClientManagerParent(); 62 63 void Init(); 64 }; 65 66 } // namespace mozilla::dom 67 68 #endif // _mozilla_dom_ClientManagerParent_h