diff options
Diffstat (limited to 'mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process')
-rw-r--r-- | mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process/IChildProcess.aidl | 48 | ||||
-rw-r--r-- | mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process/IProcessManager.aidl | 14 |
2 files changed, 62 insertions, 0 deletions
diff --git a/mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process/IChildProcess.aidl b/mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process/IChildProcess.aidl new file mode 100644 index 0000000000..0ae346e3b8 --- /dev/null +++ b/mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process/IChildProcess.aidl @@ -0,0 +1,48 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +package org.mozilla.gecko.process; + +import org.mozilla.gecko.gfx.ICompositorSurfaceManager; +import org.mozilla.gecko.gfx.ISurfaceAllocator; +import org.mozilla.gecko.process.IProcessManager; + +import android.os.Bundle; +import android.os.ParcelFileDescriptor; + +interface IChildProcess { + /** The process started correctly. */ + const int STARTED_OK = 0; + /** An error occurred when trying to start this process. */ + const int STARTED_FAIL = 1; + /** This process is being used elsewhere and cannot start. */ + const int STARTED_BUSY = 2; + + int getPid(); + int start(in IProcessManager procMan, + in String mainProcessId, + in String[] args, + in Bundle extras, + int flags, + in String userSerialNumber, + in String crashHandlerService, + in ParcelFileDescriptor prefsPfd, + in ParcelFileDescriptor prefMapPfd, + in ParcelFileDescriptor ipcPfd, + in ParcelFileDescriptor crashReporterPfd, + in ParcelFileDescriptor crashAnnotationPfd); + + void crash(); + + /** Must only be called for a GPU child process type. */ + ICompositorSurfaceManager getCompositorSurfaceManager(); + + /** + * Returns the interface that other processes should use to allocate Surfaces to be + * consumed by the GPU process. Must only be called for a GPU child process type. + * @param allocatorId A unique ID used to identify the GPU process instance the allocator + * belongs to. + */ + ISurfaceAllocator getSurfaceAllocator(int allocatorId); +} diff --git a/mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process/IProcessManager.aidl b/mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process/IProcessManager.aidl new file mode 100644 index 0000000000..b75f317124 --- /dev/null +++ b/mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/process/IProcessManager.aidl @@ -0,0 +1,14 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +package org.mozilla.gecko.process; + +import org.mozilla.gecko.IGeckoEditableChild; +import org.mozilla.gecko.gfx.ISurfaceAllocator; + +interface IProcessManager { + void getEditableParent(in IGeckoEditableChild child, long contentId, long tabId); + // Returns the interface that child processes should use to allocate Surfaces. + ISurfaceAllocator getSurfaceAllocator(); +} |