2013-11-19 01:49:53 +04:00
|
|
|
/* 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/. */
|
|
|
|
|
2015-08-29 08:45:04 +03:00
|
|
|
include protocol PBackground;
|
2013-11-19 01:49:53 +04:00
|
|
|
|
2013-12-05 08:32:52 +04:00
|
|
|
using mozilla::dom::asmjscache::Metadata from "mozilla/dom/asmjscache/AsmJSCache.h";
|
2014-10-23 02:28:07 +04:00
|
|
|
using JS::AsmJSCacheResult from "mozilla/dom/asmjscache/AsmJSCache.h";
|
2013-12-05 08:32:52 +04:00
|
|
|
|
2013-11-19 01:49:53 +04:00
|
|
|
namespace mozilla {
|
|
|
|
namespace dom {
|
|
|
|
namespace asmjscache {
|
|
|
|
|
|
|
|
protocol PAsmJSCacheEntry
|
|
|
|
{
|
2015-08-29 08:45:04 +03:00
|
|
|
manager PBackground;
|
2013-11-19 01:49:53 +04:00
|
|
|
|
2013-12-05 08:32:52 +04:00
|
|
|
// When the cache is opened to read, the parent process sends over the
|
|
|
|
// origin's Metadata so the child process can select the cache entry to open
|
|
|
|
// (based on hash) and notify the parent (via SelectCacheFileToRead).
|
|
|
|
child:
|
2016-01-27 00:51:53 +03:00
|
|
|
async OnOpenMetadataForRead(Metadata metadata);
|
2013-12-05 08:32:52 +04:00
|
|
|
parent:
|
2016-01-27 00:51:53 +03:00
|
|
|
async SelectCacheFileToRead(uint32_t moduleIndex);
|
2013-12-05 08:32:52 +04:00
|
|
|
|
2013-11-19 01:49:53 +04:00
|
|
|
child:
|
2013-12-05 08:32:52 +04:00
|
|
|
// Once the cache file has been opened, the child is notified and sent an
|
|
|
|
// open file descriptor.
|
2016-01-27 00:51:53 +03:00
|
|
|
async OnOpenCacheFile(int64_t fileSize, FileDescriptor fileDesc);
|
2013-11-19 01:49:53 +04:00
|
|
|
|
|
|
|
both:
|
2016-01-27 00:51:53 +03:00
|
|
|
async __delete__(AsmJSCacheResult result);
|
2013-11-19 01:49:53 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace asmjscache
|
|
|
|
} // namespace dom
|
|
|
|
} // namespace mozilla
|