Index: third_party/WebKit/Source/core/mojo/Mojo.h |
diff --git a/third_party/WebKit/Source/core/mojo/Mojo.h b/third_party/WebKit/Source/core/mojo/Mojo.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..55c8762573b7f34191ee83228b1f3087898317cb |
--- /dev/null |
+++ b/third_party/WebKit/Source/core/mojo/Mojo.h |
@@ -0,0 +1,90 @@ |
+// 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 Mojo_h |
+#define Mojo_h |
+ |
+#include "bindings/core/v8/ScriptWrappable.h" |
+#include "mojo/public/cpp/system/core.h" |
+ |
+namespace blink { |
+ |
+class ArrayBufferOrArrayBufferView; |
+class MojoCreateMessagePipeOptions; |
+class MojoCreateMessagePipeResult; |
+class MojoHandle; |
+class MojoReadMessageResult; |
+class MojoWatchCallback; |
+class MojoWatcher; |
+class ScriptState; |
+ |
+class Mojo final : public GarbageCollected<Mojo>, public ScriptWrappable { |
+ DEFINE_WRAPPERTYPEINFO(); |
+ |
+ public: |
+ CORE_EXPORT static Mojo* create(); |
+ |
+ // MojoResult |
+ static const MojoResult kResultOk = MOJO_HANDLE_SIGNAL_NONE; |
+ static const MojoResult kResultCancelled = MOJO_RESULT_CANCELLED; |
+ static const MojoResult kResultUnknown = MOJO_RESULT_UNKNOWN; |
+ static const MojoResult kResultInvalidArgument = MOJO_RESULT_INVALID_ARGUMENT; |
+ static const MojoResult kResultDeadlineExceeded = |
+ MOJO_RESULT_DEADLINE_EXCEEDED; |
+ static const MojoResult kResultNotFound = MOJO_RESULT_NOT_FOUND; |
+ static const MojoResult kResultAlreadyExists = MOJO_RESULT_ALREADY_EXISTS; |
+ static const MojoResult kResultPermissionDenied = |
+ MOJO_RESULT_PERMISSION_DENIED; |
+ static const MojoResult kResultResourceExhausted = |
+ MOJO_RESULT_RESOURCE_EXHAUSTED; |
+ static const MojoResult kResultFailedPrecondition = |
+ MOJO_RESULT_FAILED_PRECONDITION; |
+ static const MojoResult kResultAborted = MOJO_RESULT_ABORTED; |
+ static const MojoResult kResultOutOfRange = MOJO_RESULT_OUT_OF_RANGE; |
+ static const MojoResult kResultUnimplemented = MOJO_RESULT_UNIMPLEMENTED; |
+ static const MojoResult kResultInternal = MOJO_RESULT_INTERNAL; |
+ static const MojoResult kResultUnavailable = MOJO_RESULT_UNAVAILABLE; |
+ static const MojoResult kResultDataLoss = MOJO_RESULT_DATA_LOSS; |
+ static const MojoResult kResultBusy = MOJO_RESULT_BUSY; |
+ static const MojoResult kResultShouldWait = MOJO_RESULT_SHOULD_WAIT; |
+ |
+ // MojoHandleSignals |
+ static const MojoHandleSignals kHandleSignalNone = MOJO_HANDLE_SIGNAL_NONE; |
+ static const MojoHandleSignals kHandleSignalReadable = |
+ MOJO_HANDLE_SIGNAL_READABLE; |
+ static const MojoHandleSignals kHandleSignalWritable = |
+ MOJO_HANDLE_SIGNAL_WRITABLE; |
+ static const MojoHandleSignals kHandleSignalPeerClosed = |
+ MOJO_HANDLE_SIGNAL_PEER_CLOSED; |
+ |
+ // MessagePipe flags. |
+ static const MojoCreateMessagePipeOptionsFlags |
+ kCreateMessagePipeOptionsFlagNone = |
+ MOJO_CREATE_MESSAGE_PIPE_OPTIONS_FLAG_NONE; |
+ static const MojoWriteMessageFlags kWriteMessageFlagNone = |
+ MOJO_WRITE_MESSAGE_FLAG_NONE; |
+ static const MojoReadMessageFlags kReadMessageFlagNone = |
+ MOJO_READ_MESSAGE_FLAG_NONE; |
+ static const MojoReadMessageFlags kReadMessageFlagMayDiscard = |
+ MOJO_READ_MESSAGE_FLAG_MAY_DISCARD; |
+ |
+ MojoWatcher* watch(ScriptState*, |
+ MojoHandle*, |
+ MojoHandleSignals, |
+ MojoWatchCallback*); |
+ |
+ void createMessagePipe(const MojoCreateMessagePipeOptions&, |
+ MojoCreateMessagePipeResult&); |
+ MojoResult writeMessage(MojoHandle*, |
+ ArrayBufferOrArrayBufferView&, |
+ const HeapVector<Member<MojoHandle>>&, |
+ MojoWriteMessageFlags); |
+ void readMessage(MojoHandle*, MojoReadMessageFlags, MojoReadMessageResult&); |
+ |
+ DEFINE_INLINE_TRACE() {} |
+}; |
+ |
+} // namespace blink |
+ |
+#endif // Mojo_h |