Index: chrome/browser/nacl_host/nacl_file_host.h |
diff --git a/chrome/browser/nacl_host/nacl_file_host.h b/chrome/browser/nacl_host/nacl_file_host.h |
index ee473cc3de0ab941e04f8a1b238a1ae3f4a9cade..b6e04fba6e5178df9261a5e83b292dc4e97792be 100644 |
--- a/chrome/browser/nacl_host/nacl_file_host.h |
+++ b/chrome/browser/nacl_host/nacl_file_host.h |
@@ -22,11 +22,27 @@ namespace IPC { |
class Message; |
} |
+namespace nacl { |
+struct PnaclInstallProgress; |
+} |
+ |
// Opens NaCl Files in the Browser process, on behalf of the NaCl plugin. |
namespace nacl_file_host { |
+typedef base::Callback<void(bool)> InstallCallback; |
+typedef base::Callback<void(const nacl::PnaclInstallProgress&)> |
+ InstallProgressCallback; |
+ |
+// Ensure that PNaCl is installed. Calls |done_callback| if PNaCl is already |
+// installed. Otherwise, issues a request to install and calls |done_callback| |
+// after that request completes w/ success or failure. |
+// If a request to install is issued, then |progress_callback| is called |
+// with progress updates. |
+void EnsurePnaclInstalled( |
+ const InstallCallback& done_callback, |
+ const InstallProgressCallback& progress_callback); |
-// Open a Pnacl file (readonly) on behalf of the NaCl plugin. |
+// Open a PNaCl file (readonly) on behalf of the NaCl plugin. |
void GetReadonlyPnaclFd( |
scoped_refptr<NaClHostMessageFilter> nacl_host_message_filter, |
const std::string& filename, |