OLD | NEW |
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 module mojo { | 5 module mojo { |
6 | 6 |
7 struct CommandBufferState { | 7 struct CommandBufferState { |
8 int32 num_entries; | 8 int32 num_entries; |
9 int32 get_offset; | 9 int32 get_offset; |
10 int32 put_offset; | 10 int32 put_offset; |
11 int32 token; | 11 int32 token; |
12 int32 error; // TODO(piman): enum | 12 int32 error; // TODO(piman): enum |
13 int32 context_lost_reason; // TODO(piman): enum | 13 int32 context_lost_reason; // TODO(piman): enum |
14 uint32 generation; | 14 uint32 generation; |
15 }; | 15 }; |
16 | 16 |
17 interface CommandBufferSyncClient { | 17 interface CommandBufferSyncClient { |
18 DidInitialize(bool success); | 18 DidInitialize(bool success); |
19 DidMakeProgress(CommandBufferState state); | 19 DidMakeProgress(CommandBufferState state); |
20 }; | 20 }; |
21 | 21 |
22 [Peer=CommandBufferClient] | 22 [Client=CommandBufferClient] |
23 interface CommandBuffer { | 23 interface CommandBuffer { |
24 Initialize(CommandBufferSyncClient sync_client, | 24 Initialize(CommandBufferSyncClient sync_client, |
25 handle<shared_buffer> shared_state); | 25 handle<shared_buffer> shared_state); |
26 SetGetBuffer(int32 buffer); | 26 SetGetBuffer(int32 buffer); |
27 Flush(int32 put_offset); | 27 Flush(int32 put_offset); |
28 MakeProgress(int32 last_get_offset); | 28 MakeProgress(int32 last_get_offset); |
29 RegisterTransferBuffer( | 29 RegisterTransferBuffer( |
30 int32 id, handle<shared_buffer> transfer_buffer, uint32 size); | 30 int32 id, handle<shared_buffer> transfer_buffer, uint32 size); |
31 DestroyTransferBuffer(int32 id); | 31 DestroyTransferBuffer(int32 id); |
32 Echo() => (); | 32 Echo() => (); |
33 | 33 |
34 // TODO(piman): move to somewhere else (native_viewport?). | 34 // TODO(piman): move to somewhere else (native_viewport?). |
35 RequestAnimationFrames(); | 35 RequestAnimationFrames(); |
36 CancelAnimationFrames(); | 36 CancelAnimationFrames(); |
37 | 37 |
38 // TODO(piman): sync points | 38 // TODO(piman): sync points |
39 }; | 39 }; |
40 | 40 |
41 [Peer=CommandBuffer] | |
42 interface CommandBufferClient { | 41 interface CommandBufferClient { |
43 DidDestroy(); | 42 DidDestroy(); |
44 LostContext(int32 lost_reason); // TODO(piman): enum | 43 LostContext(int32 lost_reason); // TODO(piman): enum |
45 | 44 |
46 // TODO(piman): move to somewhere else (native_viewport?). | 45 // TODO(piman): move to somewhere else (native_viewport?). |
47 DrawAnimationFrame(); | 46 DrawAnimationFrame(); |
48 }; | 47 }; |
49 | 48 |
50 } | 49 } |
51 | |
OLD | NEW |