diff options
Diffstat (limited to 'Sources/Protocol/owl-iosurface-unstable-v1.xml')
-rw-r--r-- | Sources/Protocol/owl-iosurface-unstable-v1.xml | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/Sources/Protocol/owl-iosurface-unstable-v1.xml b/Sources/Protocol/owl-iosurface-unstable-v1.xml new file mode 100644 index 0000000..dd252af --- /dev/null +++ b/Sources/Protocol/owl-iosurface-unstable-v1.xml @@ -0,0 +1,73 @@ +<?xml version="1.0" encoding="UTF-8"?> +<protocol name="owl_iosurface_unstable_v1"> + + <copyright> + Copyright © 2019-2021 Sergey Bugaev + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice (including the next + paragraph) shall be included in all copies or substantial portions of the + Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + </copyright> + + <interface name="zowl_iosurface_manager_v1" version="1"> + <description summary="use IOSurface for sharing GPU buffer resources"> + TODO + </description> + + <request name="create_surface"> + <description summary="create an IOSurface"> + This request assigns the zowl_mach_ipc_port_v1 object a role of the IOSurface + receiver. After sending this request, it is possible to call the + owl_iosurface_v1_set_surface_port() MIG routine on its underlying Mach port. + </description> + <arg name="port" type="object" interface="zowl_mach_ipc_port_v1"/> + <arg name="id" type="new_id" interface="zowl_iosurface_v1"/> + </request> + + <request name="destroy" type="destructor"> + <description summary="destroy zowl_iosurface_manager_v1"> + Destroy this zowl_iosurface_manager_v1 object and all the resources associated + with it. Destroying a zowl_iosurface_manager_v1 object while an IOSurface that + was created using it is in use is an error. + </description> + </request> + </interface> + + <interface name="zowl_iosurface_v1" version="1"> + <description summary="IOSurface"> + TODO + </description> + + <request name="create_buffer"> + <description summary="create wl_buffer"> + Create a wl_buffer out of this zowl_iosurface_v1 object. This request must be + preceeded by the client creating an IOSurface object with the desired size + and sending its Mach port using the owl_iosurface_v1_set_surface_port() MIG + routine on the Mach port that was used to create this zowl_iosurface_v1 object. + </description> + <arg name="id" type="new_id" interface="wl_buffer"/> + </request> + + <request name="destroy" type="destructor"> + <description summary="destroy zowl_iosurface_v1"> + Destroy this zowl_iosurface_v1 object and all the resources associated + with it, including the underlying IOSurface. + </description> + </request> + </interface> +</protocol> |