Chromium Code Reviews| Index: third_party/WebKit/Source/core/mojo/MojoHandleWatcher.h |
| diff --git a/third_party/WebKit/Source/core/mojo/MojoHandleWatcher.h b/third_party/WebKit/Source/core/mojo/MojoHandleWatcher.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..ba2bccf5f59b0a98b44ab2c25158a69e799f869e |
| --- /dev/null |
| +++ b/third_party/WebKit/Source/core/mojo/MojoHandleWatcher.h |
| @@ -0,0 +1,42 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef MojoHandleWatcher_h |
| +#define MojoHandleWatcher_h |
| + |
| +#include "mojo/public/c/system/core.h" |
| +#include "wtf/Functional.h" |
| + |
| +namespace blink { |
| + |
| +class WebTaskRunner; |
| + |
| +class MojoHandleWatcher { |
| + public: |
| + using ReadyCallback = WTF::Function<void(MojoResult)>; |
| + |
| + MojoHandleWatcher(WebTaskRunner*); |
| + ~MojoHandleWatcher(); |
| + |
| + MojoResult start(MojoHandle, |
| + MojoHandleSignals, |
| + std::unique_ptr<ReadyCallback>); |
| + void cancel(); |
| + |
| + private: |
| + class RunReadyCallbackTask; |
| + static void onHandleReady(uintptr_t, |
| + MojoResult, |
| + MojoHandleSignalsState, |
| + MojoWatchNotificationFlags); |
| + void runReadyCallback(MojoResult); |
| + |
| + WebTaskRunner* m_taskRunner; |
|
Ken Rockot(use gerrit already)
2016/10/18 15:47:10
nit: WebTaskRunner* const to guarantee m_taskRunne
alokp
2016/10/18 16:48:37
Done.
|
| + MojoHandle m_handle; |
| + std::unique_ptr<ReadyCallback> m_callback; |
| +}; |
| + |
| +} // namespace blink |
| + |
| +#endif // MojoHandleWatcher_h |