X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=protocol%2Fagl-screenshooter.xml;fp=protocol%2Fagl-screenshooter.xml;h=6ed145759324f3167937f322b1f2796422e13178;hb=991714fc7f92aea3d07c7225247a821e3461027e;hp=0000000000000000000000000000000000000000;hpb=1f888f2050ac50ec8c1750ff4f0e2c485936d7ed;p=src%2Fagl-compositor.git diff --git a/protocol/agl-screenshooter.xml b/protocol/agl-screenshooter.xml new file mode 100644 index 0000000..6ed1457 --- /dev/null +++ b/protocol/agl-screenshooter.xml @@ -0,0 +1,84 @@ + + + + + Copyright © 2020 Collabora. Ltd, + + 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. + + + + + agl compositor extension that performs a screenshot of the output, which + is represented by a 'wl_output' object. + + A client would call 'take_shot' request and wait until the compositor + finishes to write the data to a wayland buffer, moment in which signals + back the client with the help of the 'done' event. Clients should wait + until the 'done' event is received, if they want to take another + screenshot, or take another screnshot of a different output. + + The client must provide a wl_shm-based wl_buffer of the correct size when + taking a shot. The compositor will write the shot into the wl_buffer and then + send the 'done' event that signals completion of writing the data. + + Once the compositor has finished to transfer the data back into the supplied + wayland buffer, the client should be able to transfer it to a popular + file format on the disk. + + + + + + + + + + + Takes a screenshot of the wayland output represented by a 'wl_output' + object. Clients should first retrieve it using global registry, as well + as the 'wl_shm' object in order to create a wayland buffer type of + object ('wl_buffer'). + + Clients can derive the stride and size from the 'wl_output' object, and + later on use those when creating shm-based 'wl_buffer', as well as supplying + the pixel format. + + + + + + + + + Even sent back to nofify client 'take_shot' request has completed. + + + + + + + Destroys the 'weston_screenshooter' interface. + + + + + +