Changeset View
Changeset View
Standalone View
Standalone View
src/client/protocols/wayland-eglstream-controller.xml
- This file was added.
1 | <?xml version="1.0" encoding="UTF-8"?> | ||||
---|---|---|---|---|---|
2 | <protocol name="wl_eglstream_controller"> | ||||
3 | <copyright> | ||||
4 | Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved. | ||||
5 | | ||||
6 | Permission is hereby granted, free of charge, to any person obtaining a | ||||
7 | copy of this software and associated documentation files (the "Software"), | ||||
8 | to deal in the Software without restriction, including without limitation | ||||
9 | the rights to use, copy, modify, merge, publish, distribute, sublicense, | ||||
10 | and/or sell copies of the Software, and to permit persons to whom the | ||||
11 | Software is furnished to do so, subject to the following conditions: | ||||
12 | | ||||
13 | The above copyright notice and this permission notice shall be included in | ||||
14 | all copies or substantial portions of the Software. | ||||
15 | | ||||
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||||
19 | THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||||
21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | ||||
22 | DEALINGS IN THE SOFTWARE. | ||||
23 | </copyright> | ||||
24 | <interface name="wl_eglstream_controller" version="2"> | ||||
25 | <!-- Present mode types. This enum defines what the present mode given | ||||
26 | to a attach_eglstream_consumer_attribs request represents --> | ||||
27 | <enum name="present_mode"> | ||||
28 | <description summary="Stream present mode"> | ||||
29 | - dont_care: Using this enum will tell the server to make its own | ||||
30 | decisions regarding present mode. | ||||
31 | | ||||
32 | - fifo: Tells the server to use a fifo present mode. The decision to | ||||
33 | use fifo synchronous is left up to the server. | ||||
34 | | ||||
35 | - mailbox: Tells the server to use a mailbox present mode. | ||||
36 | </description> | ||||
37 | <entry name="dont_care" value="0" summary="Let the Server decide present mode"/> | ||||
38 | <entry name="fifo" value="1" summary="Use a fifo present mode"/> | ||||
39 | <entry name="mailbox" value="2" summary="Use a mailbox mode"/> | ||||
40 | </enum> | ||||
41 | | ||||
42 | <enum name="attrib"> | ||||
43 | <description summary="Stream consumer attachment attributes"> | ||||
44 | - present_mode: Must be one of wl_eglstream_controller_present_mode. Tells the | ||||
45 | server the desired present mode that should be used. | ||||
46 | | ||||
47 | - fifo_length: Only valid when the present_mode attrib is provided and its | ||||
48 | value is specified as fifo. Tells the server the desired fifo | ||||
49 | length to be used when the desired present_mode is fifo. | ||||
50 | </description> | ||||
51 | <entry name="present_mode" value="0" summary="Tells the server the desired present mode"/> | ||||
52 | <entry name="fifo_length" value="1" summary="Tells the server the desired fifo length when the desired presenation_mode is fifo."/> | ||||
53 | </enum> | ||||
54 | | ||||
55 | <request name="attach_eglstream_consumer" since="1"> | ||||
56 | <description summary="Create server stream and attach consumer"> | ||||
57 | Creates the corresponding server side EGLStream from the given wl_buffer | ||||
58 | and attaches a consumer to it. | ||||
59 | </description> | ||||
60 | <arg name="wl_surface" type="object" interface="wl_surface" | ||||
61 | summary="wl_surface corresponds to the client surface associated with | ||||
62 | newly created eglstream"/> | ||||
63 | <arg name="wl_resource" type="object" interface="wl_buffer" | ||||
64 | summary="wl_resource corresponding to an EGLStream"/> | ||||
65 | </request> | ||||
66 | | ||||
67 | <request name="attach_eglstream_consumer_attribs" since="2"> | ||||
68 | <description summary="Create server stream and attach consumer using attributes"> | ||||
69 | Creates the corresponding server side EGLStream from the given wl_buffer | ||||
70 | and attaches a consumer to it using the given attributes. | ||||
71 | </description> | ||||
72 | <arg name="wl_surface" type="object" interface="wl_surface" | ||||
73 | summary="wl_surface corresponds to the client surface associated with | ||||
74 | newly created eglstream"/> | ||||
75 | <arg name="wl_resource" type="object" interface="wl_buffer" | ||||
76 | summary="wl_resource corresponding to an EGLStream"/> | ||||
77 | <arg name="attribs" type="array" | ||||
78 | summary="Stream consumer attachment attribs"> | ||||
79 | <description summary="List of attributes with consumer attachment data"> | ||||
80 | It contains key-value pairs compatible with intptr_t type. A key must | ||||
81 | be one of wl_eglstream_controller_attrib enumeration values. What a value | ||||
82 | represents is attribute-specific. | ||||
83 | </description> | ||||
84 | </arg> | ||||
85 | </request> | ||||
86 | </interface> | ||||
87 | </protocol> |