OLD | NEW |
(Empty) | |
| 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 |
| 3 # found in the LICENSE file. |
| 4 |
| 5 import interface_dsl |
| 6 |
| 7 def makeInterface(): |
| 8 mojo = interface_dsl.Interface() |
| 9 |
| 10 f = mojo.func('MojoCreateSharedBuffer', 'MojoResult') |
| 11 f.param('options').inStruct('MojoCreateSharedBufferOptions').optional() |
| 12 f.param('num_bytes').inp('uint64_t') |
| 13 f.param('shared_buffer_handle').out('MojoHandle') |
| 14 |
| 15 f = mojo.func('MojoDuplicateBufferHandle', 'MojoResult') |
| 16 f.param('buffer_handle').inp('MojoHandle') |
| 17 f.param('options').inStruct('MojoDuplicateBufferHandleOptions').optional() |
| 18 f.param('new_buffer_handle').out('MojoHandle') |
| 19 |
| 20 f = mojo.func('MojoMapBuffer', 'MojoResult') |
| 21 f.param('buffer_handle').inp('MojoHandle') |
| 22 f.param('offset').inp('uint64_t') |
| 23 f.param('num_bytes').inp('uint64_t') |
| 24 f.param('buffer').out('void*') |
| 25 f.param('flags').inp('MojoMapBufferFlags') |
| 26 |
| 27 f = mojo.func('MojoUnmapBuffer', 'MojoResult') |
| 28 f.param('buffer').inp('void*') |
| 29 |
| 30 f = mojo.func('MojoCreateDataPipe', 'MojoResult') |
| 31 f.param('options').inStruct('MojoCreateDataPipeOptions').optional() |
| 32 f.param('data_pipe_producer_handle').out('MojoHandle') |
| 33 f.param('data_pipe_consumer_handle').out('MojoHandle') |
| 34 |
| 35 f = mojo.func('MojoWriteData', 'MojoResult') |
| 36 f.param('data_pipe_producer_handle').inp('MojoHandle') |
| 37 f.param('elements').inArray('void', 'num_bytes') |
| 38 f.param('num_bytes').inOut('uint32_t') |
| 39 f.param('flags').inp('MojoWriteDataFlags') |
| 40 |
| 41 f = mojo.func('MojoBeginWriteData', 'MojoResult') |
| 42 f.param('data_pipe_producer_handle').inp('MojoHandle') |
| 43 # TODO this output is a little weird. |
| 44 f.param('buffer').out('void*') |
| 45 f.param('buffer_num_bytes').inOut('uint32_t') |
| 46 f.param('flags').inp('MojoWriteDataFlags') |
| 47 |
| 48 f = mojo.func('MojoEndWriteData', 'MojoResult') |
| 49 f.param('data_pipe_producer_handle').inp('MojoHandle') |
| 50 f.param('num_bytes_written').inp('uint32_t') |
| 51 |
| 52 f = mojo.func('MojoReadData', 'MojoResult') |
| 53 f.param('data_pipe_consumer_handle').inp('MojoHandle') |
| 54 f.param('elements').outArray('void', 'num_bytes') |
| 55 f.param('num_bytes').inOut('uint32_t') |
| 56 f.param('flags').inp('MojoReadDataFlags') |
| 57 |
| 58 f = mojo.func('MojoBeginReadData', 'MojoResult') |
| 59 f.param('data_pipe_consumer_handle').inp('MojoHandle') |
| 60 # TODO this output is a little weird. |
| 61 f.param('buffer').out('const void*') |
| 62 f.param('buffer_num_bytes').inOut('uint32_t') |
| 63 f.param('flags').inp('MojoReadDataFlags') |
| 64 |
| 65 f = mojo.func('MojoEndReadData', 'MojoResult') |
| 66 f.param('data_pipe_consumer_handle').inp('MojoHandle') |
| 67 f.param('num_bytes_read').inp('uint32_t') |
| 68 |
| 69 f = mojo.func('MojoGetTimeTicksNow', 'MojoTimeTicks') |
| 70 |
| 71 f = mojo.func('MojoClose', 'MojoResult') |
| 72 f.param('handle').inp('MojoHandle') |
| 73 |
| 74 f = mojo.func('MojoWait', 'MojoResult') |
| 75 f.param('handle').inp('MojoHandle') |
| 76 f.param('signals').inp('MojoHandleSignals') |
| 77 f.param('deadline').inp('MojoDeadline') |
| 78 |
| 79 f = mojo.func('MojoWaitMany', 'MojoResult') |
| 80 f.param('handles').inArray('MojoHandle', 'num_handles') |
| 81 f.param('signals').inArray('MojoHandleSignals', 'num_handles') |
| 82 f.param('num_handles').inp('uint32_t') |
| 83 f.param('deadline').inp('MojoDeadline') |
| 84 |
| 85 f = mojo.func('MojoCreateMessagePipe', 'MojoResult') |
| 86 f.param('options').inStruct('MojoCreateMessagePipeOptions').optional() |
| 87 f.param('message_pipe_handle0').out('MojoHandle') |
| 88 f.param('message_pipe_handle1').out('MojoHandle') |
| 89 |
| 90 f = mojo.func('MojoWriteMessage', 'MojoResult') |
| 91 f.param('message_pipe_handle').inp('MojoHandle') |
| 92 f.param('bytes').inArray('void', 'num_bytes').optional() |
| 93 f.param('num_bytes').inp('uint32_t') |
| 94 f.param('handles').inArray('MojoHandle', 'num_handles').optional() |
| 95 f.param('num_handles').inp('uint32_t') |
| 96 f.param('flags').inp('MojoWriteMessageFlags') |
| 97 |
| 98 f = mojo.func('MojoReadMessage', 'MojoResult') |
| 99 f.param('message_pipe_handle').inp('MojoHandle') |
| 100 f.param('bytes').outArray('void', 'num_bytes').optional() |
| 101 f.param('num_bytes').inOut('uint32_t').optional() |
| 102 f.param('handles').outArray('MojoHandle', 'num_handles').optional() |
| 103 f.param('num_handles').inOut('uint32_t').optional() |
| 104 f.param('flags').inp('MojoReadMessageFlags') |
| 105 |
| 106 mojo.finalize() |
| 107 |
| 108 return mojo |
OLD | NEW |