PVR.ipdl (1834B)
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 using mozilla::TimeStamp from "mozilla/TimeStamp.h"; 7 using mozilla::gfx::VRControllerType from "moz_external_vr.h"; 8 using mozilla::dom::NativeThreadId from "mozilla/dom/NativeThreadId.h"; 9 include "VRMessageUtils.h"; 10 include "VRParent.h"; 11 include "VRChild.h"; 12 13 include CrashReporterInitArgs; 14 include GraphicsMessages; 15 include MemoryReportTypes; 16 include PrefsTypes; 17 include protocol PVRGPU; 18 19 namespace mozilla { 20 namespace gfx { 21 22 [NeedsOtherPid, ChildImpl="VRChild", ParentImpl="VRParent", ParentProc=VR, ChildProc=Parent] 23 async protocol PVR 24 { 25 parent: 26 async NewGPUVRManager(Endpoint<PVRGPUParent> endpoint); 27 async Init(GfxVarUpdate[] vars, DevicePrefs devicePrefs); 28 29 async UpdateVar(GfxVarUpdate[] var); 30 async PreferenceUpdate(Pref pref); 31 async OpenVRControllerActionPathToVR(nsCString aPath); 32 async OpenVRControllerManifestPathToVR(VRControllerType aType, nsCString aPath); 33 async RequestMemoryReport(uint32_t generation, 34 bool anonymize, 35 bool minimizeMemoryUsage, 36 FileDescriptor? DMDFile) 37 returns (uint32_t aGeneration); 38 39 child: 40 // Sent when the GPU process has initialized devices. This occurs once, after 41 // Init(). 42 async InitComplete(); 43 async OpenVRControllerActionPathToParent(nsCString aPath); 44 async OpenVRControllerManifestPathToParent(VRControllerType aType, nsCString aPath); 45 async InitCrashReporter(CrashReporterInitArgs aInitArgs); 46 async AddMemoryReport(MemoryReport aReport); 47 }; 48 49 } // namespace gfx 50 } // namespace mozilla