Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9)

Unified Diff: mojo/public/go/system/core.go

Issue 695583002: Update mojo sdk to rev e083961bf11fd0c94d40be8853761da529b6d444 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Patch in https://codereview.chromium.org/692823003 Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mojo/public/gles2/BUILD.gn ('k') | mojo/public/go/system/impl/core_impl.go » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/public/go/system/core.go
diff --git a/mojo/public/go/system/core.go b/mojo/public/go/system/core.go
index d8735aeb6ae2e73aeaed5141e2832942b25bda8a..cf6ae99a4b54c1058d88d8e22a0402a7fdf459ef 100644
--- a/mojo/public/go/system/core.go
+++ b/mojo/public/go/system/core.go
@@ -4,18 +4,76 @@
package system
-import "mojo/public/go/system/impl"
+import (
+ "unsafe"
+ t "mojo/public/go/system/impl"
+)
+
+// Core is an interface that defines the set of Mojo system APIs.
type Core interface {
- GetTimeTicksNow() int64
-}
+ // GetTimeTicksNow returns a monotonically increasing platform
+ // dependent tick count representing "right now". Resolution
+ // depends on the systemconfiguration.
+ GetTimeTicksNow() t.MojoTimeTicks
-var core *impl.CoreImpl
+ // Close closes the given handle.
+ Close(handle t.MojoHandle) (result t.MojoResult)
-func init() {
- core = &impl.CoreImpl{}
-}
+ // Wait waits on the given handle until a signal indicated by signals
+ // is satisfied or it becomes known that no signal indicated by
+ // signals will ever be satisified or until deadline has passed.
+ Wait(handle t.MojoHandle, signal t.MojoHandleSignals, deadline t.MojoDeadline) (result t.MojoResult)
+
+ // WaitMany behaves as if Wait were called on each handle/signal pair
+ // simultaneously and completing when the first Wait would complete.
+ WaitMany(handles []t.MojoHandle, signals []t.MojoHandleSignals, deadline t.MojoDeadline) (result t.MojoResult)
+
+ // CreateMessagePipe creates a message pipe which is a bidirectional
+ // communication channel for framed data (i.e., messages). Messages
+ // can contain plain data and/or Mojo handles. On success, it returns
+ // handles to the two endpoints of the message pipe.
+ CreateMessagePipe(opts *t.MessagePipeOptions) (result t.MojoResult, handle0 t.MojoHandle, handle1 t.MojoHandle)
+
+ // WriteMessage writes message data and optional attached handles to
+ // the message pipe endpoint given by handle. On success the attached
+ // handles will no longer be valid (ie: the receiver will receive
+ // equivalent but logically different handles).
+ WriteMessage(handle t.MojoHandle, msg []byte, attached []t.MojoHandle, flags t.MojoWriteMessageFlags) (result t.MojoResult)
+
+ // ReadMessage reads a message from the message pipe endpoint given
+ // by handle with the specified flags. Returns the message data and
+ // attached handles that were received and the number of bytes and
+ // attached handles in the "next" message.
+ ReadMessage(handle t.MojoHandle, flags t.MojoReadMessageFlags) (result t.MojoResult, msg []byte, attached []t.MojoHandle, numBytes uint32, numHandles uint32)
-func GetCore() Core {
- return core
-}
+ // CreateDataPipe creates a data pipe which is a unidirectional
+ // communication channel for unframed data. On success, returns a
+ // handle to the producer and consumer of the data pipe.
+ CreateDataPipe(opts *t.DataPipeOptions) (result t.MojoResult, producer t.MojoHandle, consumer t.MojoHandle)
+
+ // WriteData writes data to the data pipe producer handle with the
+ // given flags. On success, returns the number of bytes that were
+ // actually written.
+ WriteData(producer t.MojoHandle, data []byte, flags t.MojoWriteDataFlags) (result t.MojoResult, numBytes uint32)
+
+ // ReadData reads data from the data pipe consumer handle with the
+ // given flags. On success, returns the data that was read.
+ ReadData(consumer t.MojoHandle, flags t.MojoReadDataFlags) (result t.MojoResult, data []byte)
+
+ // CreateSharedBuffer creates a buffer of size numBytes that can be
+ // shared between applications. One must call MapBuffer to access
+ // the buffer.
+ CreateSharedBuffer(opts *t.SharedBufferOptions, numBytes uint64) (result t.MojoResult, handle t.MojoHandle)
+
+ // DuplicateBufferHandle duplicates the handle to a buffer.
+ DuplicateBufferHandle(handle t.MojoHandle, opts *t.DuplicateBufferHandleOptions) (result t.MojoResult, duplicate t.MojoHandle)
+
+ // MapBuffer maps the requested part of the shared buffer given by
+ // handle into memory with specified flags. On success, it returns
+ // a pointer to the requested shared buffer.
+ MapBuffer(handle t.MojoHandle, offset uint64, numBytes uint64, flags t.MojoMapBufferFlags) (result t.MojoResult, buffer unsafe.Pointer)
+
+ // UnmapBuffer unmaps a buffer pointer that was returned by MapBuffer.
+ UnmapBuffer(buffer unsafe.Pointer) (result t.MojoResult)
+}
« no previous file with comments | « mojo/public/gles2/BUILD.gn ('k') | mojo/public/go/system/impl/core_impl.go » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698