OLD | NEW |
| (Empty) |
1 {# Copyright 2013 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 {% extends "base.template" %} | |
6 | |
7 {% macro optional_array_struct(type) %} | |
8 {%- if type | needs_optional_array %} | |
9 struct {{ type | ppapi_type(array=True, optional=True) }} { | |
10 {{ type | ppapi_type(array=True) }} value; | |
11 PP_Bool is_set; | |
12 }; | |
13 {% endif -%} | |
14 {% endmacro %} | |
15 | |
16 {% macro array_struct(type) %} | |
17 {%- if type | needs_array %} | |
18 struct {{ type | ppapi_type(array=True) }} { | |
19 uint32_t size; | |
20 [size_is(size)] {{ type | ppapi_type }}[] elements; | |
21 }; | |
22 {% endif -%} | |
23 {% endmacro %} | |
24 | |
25 {% macro optional_struct(type) %} | |
26 {%- if type | needs_optional %} | |
27 struct {{ type | ppapi_type(optional=True) }} { | |
28 {{ type | ppapi_type }} value; | |
29 PP_Bool is_set; | |
30 }; | |
31 {% endif -%} | |
32 {% endmacro %} | |
33 | |
34 {% block content -%} | |
35 {# TODO(sammc): Generate version information. -#} | |
36 label Chrome { | |
37 [channel=dev] M33 = 0.1 | |
38 }; | |
39 {% for type in enums %} | |
40 enum {{ type | ppapi_type }} { | |
41 {%- for value in type.enum_values %} | |
42 {{ value | enum_value(type) }}{% if not loop.last %},{% endif %} | |
43 {%- endfor %} | |
44 }; | |
45 {{ optional_struct(type) -}} | |
46 {{ array_struct(type) -}} | |
47 {{ optional_array_struct(type) -}} | |
48 {%- endfor %} | |
49 {%- for type in types %} | |
50 struct {{ type | ppapi_type }} { | |
51 {%- for member in type.properties.itervalues() %} | |
52 {{ member | format_param_type }} {{ member.unix_name}}; | |
53 {%- endfor %} | |
54 }; | |
55 {{ optional_struct(type) -}} | |
56 {{ array_struct(type) -}} | |
57 {{ optional_array_struct(type) -}} | |
58 {% endfor %} | |
59 {%- for event in events.itervalues() %} | |
60 typedef void {{ event | ppapi_type }}( | |
61 [in] uint32_t listener_id, | |
62 [inout] mem_t user_data{% if event.params %},{% endif %} | |
63 {%- for param in event.params %} | |
64 [in] {{ param | format_param_type }} {{ param.unix_name }} | |
65 {%- if not loop.last %},{% endif %} | |
66 {%- endfor -%} | |
67 ); | |
68 {% endfor %} | |
69 interface PPB_{{ name | classname }} { | |
70 {% for function in functions.itervalues() %} | |
71 {{ function | return_type }} {{ function.name | classname }}( | |
72 [in] PP_Instance instance | |
73 {%- if function.params or function.callback or function.returns %}, | |
74 {%- endif %} | |
75 {%- for param in function.params %} | |
76 [in] {{ param | format_param_type }} {{ param.unix_name }} | |
77 {%- if not loop.last or function.callback or function.returns %}, | |
78 {%- endif %} | |
79 {%- endfor -%} | |
80 {%- if function.returns %} | |
81 [out] {{ function.returns | ppapi_type }} result, | |
82 {%- endif %} | |
83 {%- for param in function.callback.params %} | |
84 [out] {{ param | format_param_type }} {{ param.unix_name }}, | |
85 {%- endfor %} | |
86 {%- if function.callback or function.returns %} | |
87 {%- if function | has_array_outs %} | |
88 [in] PP_ArrayOutput array_allocator, | |
89 {%- endif %} | |
90 [in] PP_CompletionCallback callback | |
91 {%- endif -%} | |
92 ); | |
93 {% endfor -%} | |
94 {% for event in events.itervalues() %} | |
95 uint32_t Add{{ event.name | classname }}Listener ( | |
96 [in] PP_Instance instance, | |
97 [in] {{ event | ppapi_type }} callback, | |
98 [inout] mem_t user_data); | |
99 {% endfor %} | |
100 }; | |
101 {% endblock %} | |
OLD | NEW |