Index: mojo/edk/system/core.h |
diff --git a/mojo/edk/system/core.h b/mojo/edk/system/core.h |
index 5a3c27bddd39cd22b94050dcc2dad828370bba31..0ff9c01894d7894232e45a29cb5d4018143be376 100644 |
--- a/mojo/edk/system/core.h |
+++ b/mojo/edk/system/core.h |
@@ -7,6 +7,7 @@ |
#include <stdint.h> |
+#include "base/callback.h" |
#include "base/macros.h" |
#include "base/memory/ref_counted.h" |
#include "base/memory/scoped_ptr.h" |
@@ -49,6 +50,14 @@ class MOJO_SYSTEM_IMPL_EXPORT Core { |
// invalid. |
scoped_refptr<Dispatcher> GetDispatcher(MojoHandle handle); |
+ // Watches on the given handle for the given signals, calling |callback| when |
+ // a signal is satisfied or when all signals become unsatisfiable. |callback| |
+ // must satisfy stringent requirements -- see |Awakable::Awake()| in |
+ // awakable.h. In particular, it must not call any Mojo system functions. |
+ MojoResult AsyncWait(MojoHandle handle, |
+ MojoHandleSignals signals, |
+ base::Callback<void(MojoResult)> callback); |
+ |
embedder::PlatformSupport* platform_support() const { |
return platform_support_.get(); |
} |