OLD | NEW |
1 Mojo Public C API | 1 Mojo Public C API |
2 ================= | 2 ================= |
3 | 3 |
4 This directory contains C language bindings for the Mojo Public API. | 4 This directory contains C language bindings for the Mojo Public API. |
5 | 5 |
6 Environment | |
7 ----------- | |
8 | |
9 The environment/ subdirectory defines some common things that, while not part of | |
10 the system API, may be required for GLES2 (for example). These are things that a | |
11 Mojo application may be required to provide to the GLES2 (for example) library | |
12 in order to use it. (However, the Mojo application may implement these things as | |
13 it sees fit.) | |
14 | |
15 GLES2 | 6 GLES2 |
16 ----- | 7 ----- |
17 | 8 |
| 9 TODO(yzshen): move GLES2 to where it belongs (likely components/mus). |
| 10 |
18 The gles2/ subdirectory defines the GLES2 C API that's available to Mojo | 11 The gles2/ subdirectory defines the GLES2 C API that's available to Mojo |
19 applications. To use GLES2, Mojo applications must link against a dynamic | 12 applications. To use GLES2, Mojo applications must link against a dynamic |
20 library (the exact mechanism being platform-dependent) and use the header files | 13 library (the exact mechanism being platform-dependent) and use the header files |
21 in this directory as well as the standard Khronos GLES2 header files. | 14 in this directory as well as the standard Khronos GLES2 header files. |
22 | 15 |
23 The reason for this, rather than providing GLES2 using the standard Mojo IPC | 16 The reason for this, rather than providing GLES2 using the standard Mojo IPC |
24 mechanism, is performance: The protocol (and transport mechanisms) used to | 17 mechanism, is performance: The protocol (and transport mechanisms) used to |
25 communicate with the Mojo GLES2 service is not stable nor "public" (mainly for | 18 communicate with the Mojo GLES2 service is not stable nor "public" (mainly for |
26 performance reasons), and using the dynamic library shields the application from | 19 performance reasons), and using the dynamic library shields the application from |
27 changes to the underlying system. | 20 changes to the underlying system. |
28 | 21 |
29 System | 22 System |
30 ------ | 23 ------ |
31 | 24 |
32 The system/ subdirectory provides definitions of the basic low-level API used by | 25 The system/ subdirectory provides definitions of the basic low-level API used by |
33 all Mojo applications (whether directly or indirectly). These consist primarily | 26 all Mojo applications (whether directly or indirectly). These consist primarily |
34 of the IPC primitives used to communicate with Mojo services. | 27 of the IPC primitives used to communicate with Mojo services. |
35 | 28 |
36 Though the message protocol is stable, the implementation of the transport is | 29 Though the message protocol is stable, the implementation of the transport is |
37 not, and access to the IPC mechanisms must be via the primitives defined in this | 30 not, and access to the IPC mechanisms must be via the primitives defined in this |
38 directory. | 31 directory. |
39 | 32 |
40 Test Support | 33 Test Support |
41 ------------ | 34 ------------ |
42 | 35 |
43 This directory contains a C API for running tests. This API is only available | 36 This directory contains a C API for running tests. This API is only available |
44 under special, specific test conditions. It is not meant for general use by Mojo | 37 under special, specific test conditions. It is not meant for general use by Mojo |
45 applications. | 38 applications. |
OLD | NEW |