Chromium Code Reviews| 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&, |
|
jbroman
2016/12/20 23:21:57
const ArrayBufferOrArrayBufferView&
alokp
2017/01/09 23:33:09
Done.
|
| + const HeapVector<Member<MojoHandle>>&, |
| + MojoWriteMessageFlags); |
| + void readMessage(MojoHandle*, MojoReadMessageFlags, MojoReadMessageResult&); |
| + |
| + DEFINE_INLINE_TRACE() {} |
| +}; |
| + |
| +} // namespace blink |
| + |
| +#endif // Mojo_h |