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

Side by Side Diff: mojo/public/platform/native/system_thunks.h

Issue 830593003: Update mojo sdk to rev 9fbbc4f0fef1187312316c0ed992342474e139f1 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: cherry-pick mojo 9d3b8dd17f12d20035a14737fdc38dd926890ff8 Created 5 years, 11 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 unified diff | Download patch
« no previous file with comments | « mojo/public/mojo_application.gni ('k') | mojo/public/platform/native/system_thunks.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Note: This header should be compilable as C. 5 // Note: This header should be compilable as C.
6 6
7 #ifndef MOJO_PUBLIC_PLATFORM_NATIVE_SYSTEM_THUNKS_H_ 7 #ifndef MOJO_PUBLIC_PLATFORM_NATIVE_SYSTEM_THUNKS_H_
8 #define MOJO_PUBLIC_PLATFORM_NATIVE_SYSTEM_THUNKS_H_ 8 #define MOJO_PUBLIC_PLATFORM_NATIVE_SYSTEM_THUNKS_H_
9 9
10 #include <stddef.h> 10 #include <stddef.h>
(...skipping 22 matching lines...) Expand all
33 // the embedder. 33 // the embedder.
34 // This is the ABI between the embedder and the DSO. It can only have new 34 // This is the ABI between the embedder and the DSO. It can only have new
35 // functions added to the end. No other changes are supported. 35 // functions added to the end. No other changes are supported.
36 #pragma pack(push, 8) 36 #pragma pack(push, 8)
37 struct MojoSystemThunks { 37 struct MojoSystemThunks {
38 size_t size; // Should be set to sizeof(MojoSystemThunks). 38 size_t size; // Should be set to sizeof(MojoSystemThunks).
39 MojoTimeTicks (*GetTimeTicksNow)(); 39 MojoTimeTicks (*GetTimeTicksNow)();
40 MojoResult (*Close)(MojoHandle handle); 40 MojoResult (*Close)(MojoHandle handle);
41 MojoResult (*Wait)(MojoHandle handle, 41 MojoResult (*Wait)(MojoHandle handle,
42 MojoHandleSignals signals, 42 MojoHandleSignals signals,
43 MojoDeadline deadline); 43 MojoDeadline deadline,
44 struct MojoHandleSignalsState* signals_state);
44 MojoResult (*WaitMany)(const MojoHandle* handles, 45 MojoResult (*WaitMany)(const MojoHandle* handles,
45 const MojoHandleSignals* signals, 46 const MojoHandleSignals* signals,
46 uint32_t num_handles, 47 uint32_t num_handles,
47 MojoDeadline deadline); 48 MojoDeadline deadline,
48 MojoResult (*NewWait)(MojoHandle handle, 49 uint32_t* result_index,
49 MojoHandleSignals signals, 50 struct MojoHandleSignalsState* signals_states);
50 MojoDeadline deadline,
51 struct MojoHandleSignalsState* signals_state);
52 MojoResult (*NewWaitMany)(const MojoHandle* handles,
53 const MojoHandleSignals* signals,
54 uint32_t num_handles,
55 MojoDeadline deadline,
56 uint32_t* result_index,
57 struct MojoHandleSignalsState* signals_states);
58 MojoResult (*CreateMessagePipe)( 51 MojoResult (*CreateMessagePipe)(
59 const struct MojoCreateMessagePipeOptions* options, 52 const struct MojoCreateMessagePipeOptions* options,
60 MojoHandle* message_pipe_handle0, 53 MojoHandle* message_pipe_handle0,
61 MojoHandle* message_pipe_handle1); 54 MojoHandle* message_pipe_handle1);
62 MojoResult (*WriteMessage)(MojoHandle message_pipe_handle, 55 MojoResult (*WriteMessage)(MojoHandle message_pipe_handle,
63 const void* bytes, 56 const void* bytes,
64 uint32_t num_bytes, 57 uint32_t num_bytes,
65 const MojoHandle* handles, 58 const MojoHandle* handles,
66 uint32_t num_handles, 59 uint32_t num_handles,
67 MojoWriteMessageFlags flags); 60 MojoWriteMessageFlags flags);
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 107
115 #ifdef __cplusplus 108 #ifdef __cplusplus
116 // Intended to be called from the embedder. Returns a |MojoCore| initialized 109 // Intended to be called from the embedder. Returns a |MojoCore| initialized
117 // to contain pointers to each of the embedder's MojoCore functions. 110 // to contain pointers to each of the embedder's MojoCore functions.
118 inline MojoSystemThunks MojoMakeSystemThunks() { 111 inline MojoSystemThunks MojoMakeSystemThunks() {
119 MojoSystemThunks system_thunks = {sizeof(MojoSystemThunks), 112 MojoSystemThunks system_thunks = {sizeof(MojoSystemThunks),
120 MojoGetTimeTicksNow, 113 MojoGetTimeTicksNow,
121 MojoClose, 114 MojoClose,
122 MojoWait, 115 MojoWait,
123 MojoWaitMany, 116 MojoWaitMany,
124 MojoNewWait,
125 MojoNewWaitMany,
126 MojoCreateMessagePipe, 117 MojoCreateMessagePipe,
127 MojoWriteMessage, 118 MojoWriteMessage,
128 MojoReadMessage, 119 MojoReadMessage,
129 MojoCreateDataPipe, 120 MojoCreateDataPipe,
130 MojoWriteData, 121 MojoWriteData,
131 MojoBeginWriteData, 122 MojoBeginWriteData,
132 MojoEndWriteData, 123 MojoEndWriteData,
133 MojoReadData, 124 MojoReadData,
134 MojoBeginReadData, 125 MojoBeginReadData,
135 MojoEndReadData, 126 MojoEndReadData,
(...skipping 10 matching lines...) Expand all
146 // a DSO linked with mojo_system. For example: 137 // a DSO linked with mojo_system. For example:
147 // MojoSetSystemThunksFn mojo_set_system_thunks_fn = 138 // MojoSetSystemThunksFn mojo_set_system_thunks_fn =
148 // reinterpret_cast<MojoSetSystemThunksFn>(app_library.GetFunctionPointer( 139 // reinterpret_cast<MojoSetSystemThunksFn>(app_library.GetFunctionPointer(
149 // "MojoSetSystemThunks")); 140 // "MojoSetSystemThunks"));
150 // The expected size of |system_thunks} is returned. 141 // The expected size of |system_thunks} is returned.
151 // The contents of |system_thunks| are copied. 142 // The contents of |system_thunks| are copied.
152 typedef size_t (*MojoSetSystemThunksFn)( 143 typedef size_t (*MojoSetSystemThunksFn)(
153 const struct MojoSystemThunks* system_thunks); 144 const struct MojoSystemThunks* system_thunks);
154 145
155 #endif // MOJO_PUBLIC_PLATFORM_NATIVE_SYSTEM_THUNKS_H_ 146 #endif // MOJO_PUBLIC_PLATFORM_NATIVE_SYSTEM_THUNKS_H_
OLDNEW
« no previous file with comments | « mojo/public/mojo_application.gni ('k') | mojo/public/platform/native/system_thunks.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698