| Index: ppapi/native_client/src/trusted/plugin/pnacl_coordinator.h
|
| diff --git a/ppapi/native_client/src/trusted/plugin/pnacl_coordinator.h b/ppapi/native_client/src/trusted/plugin/pnacl_coordinator.h
|
| index 44a1d549440109f391338882093a5f81adb36d33..ac1a330b862464a8ed72a6e5dfa35ff19e0518ff 100644
|
| --- a/ppapi/native_client/src/trusted/plugin/pnacl_coordinator.h
|
| +++ b/ppapi/native_client/src/trusted/plugin/pnacl_coordinator.h
|
| @@ -17,12 +17,12 @@
|
|
|
| #include "ppapi/cpp/completion_callback.h"
|
|
|
| -#include "ppapi/native_client/src/trusted/plugin/callback_source.h"
|
| -#include "ppapi/native_client/src/trusted/plugin/file_downloader.h"
|
| #include "ppapi/native_client/src/trusted/plugin/nacl_subprocess.h"
|
| #include "ppapi/native_client/src/trusted/plugin/plugin_error.h"
|
| #include "ppapi/native_client/src/trusted/plugin/pnacl_resources.h"
|
|
|
| +#include "ppapi/utility/completion_callback_factory.h"
|
| +
|
| struct PP_PNaClOptions;
|
|
|
| namespace plugin {
|
| @@ -51,7 +51,7 @@ class TempFile;
|
| // Translation proceeds in two steps:
|
| // (1) llc translates the bitcode in pexe_url_ to an object in obj_file_.
|
| // (2) ld links the object code in obj_file_ and produces a nexe in nexe_file_.
|
| -class PnaclCoordinator: public CallbackSource<FileStreamData> {
|
| +class PnaclCoordinator {
|
| public:
|
| // Maximum number of object files passable to the translator. Cannot be
|
| // changed without changing the RPC signatures.
|
| @@ -69,12 +69,6 @@ class PnaclCoordinator: public CallbackSource<FileStreamData> {
|
| // BitcodeToNative has completed (and the finish_callback called).
|
| PP_FileHandle TakeTranslatedFileHandle();
|
|
|
| - // Implement FileDownloader's template of the CallbackSource interface.
|
| - // This method returns a callback which will be called by the FileDownloader
|
| - // to stream the bitcode data as it arrives. The callback
|
| - // (BitcodeStreamGotData) passes it to llc over SRPC.
|
| - StreamCallback GetCallback();
|
| -
|
| // Return a callback that should be notified when |bytes_compiled| bytes
|
| // have been compiled.
|
| pp::CompletionCallback GetCompileProgressCallback(int64_t bytes_compiled);
|
| @@ -92,6 +86,16 @@ class PnaclCoordinator: public CallbackSource<FileStreamData> {
|
| expected_pexe_size_) < kProgressEventSlopPct;
|
| }
|
|
|
| +
|
| + void BitcodeStreamCacheHit(PP_FileHandle handle);
|
| + void BitcodeStreamCacheMiss(int64_t expected_pexe_size);
|
| +
|
| + // Invoked when a pexe data chunk arrives (when using streaming translation)
|
| + void BitcodeStreamGotData(const void* data, int32_t length);
|
| +
|
| + // Invoked when the pexe download finishes (using streaming translation)
|
| + void BitcodeStreamDidFinish(int32_t pp_error);
|
| +
|
| private:
|
| NACL_DISALLOW_COPY_AND_ASSIGN(PnaclCoordinator);
|
|
|
| @@ -104,19 +108,9 @@ class PnaclCoordinator: public CallbackSource<FileStreamData> {
|
|
|
| // Invoke to issue a GET request for bitcode.
|
| void OpenBitcodeStream();
|
| - // Invoked when we've started an URL fetch for the pexe to check for
|
| - // caching metadata.
|
| - void BitcodeStreamDidOpen(int32_t pp_error);
|
|
|
| - // Invoked when we've gotten a temp FD for the nexe, either with the nexe
|
| - // data, or a writeable fd to save to.
|
| - void NexeFdDidOpen(int32_t pp_error);
|
| - // Invoked when a pexe data chunk arrives (when using streaming translation)
|
| - void BitcodeStreamGotData(int32_t pp_error, FileStreamData data);
|
| // Invoked when a pexe data chunk is compiled.
|
| void BitcodeGotCompiled(int32_t pp_error, int64_t bytes_compiled);
|
| - // Invoked when the pexe download finishes (using streaming translation)
|
| - void BitcodeStreamDidFinish(int32_t pp_error);
|
| // Once llc and ld nexes have been loaded and the two temporary files have
|
| // been created, this starts the translation. Translation starts two
|
| // subprocesses, one for llc and one for ld.
|
| @@ -180,12 +174,6 @@ class PnaclCoordinator: public CallbackSource<FileStreamData> {
|
|
|
| // Translated nexe file, produced by the linker.
|
| nacl::scoped_ptr<TempFile> temp_nexe_file_;
|
| - // Passed to the browser, which sets it to true if there is a translation
|
| - // cache hit.
|
| - PP_Bool is_cache_hit_;
|
| -
|
| - // Downloader for streaming translation
|
| - nacl::scoped_ptr<FileDownloader> streaming_downloader_;
|
|
|
| // Used to report information when errors (PPAPI or otherwise) are reported.
|
| ErrorInfo error_info_;
|
|
|