<?xml version="1.0" encoding="UTF-8"?>
<protocol name="qt_vulkan_server_buffer_unstable_v1">
    <copyright>
 Copyright (C) 2019 The Qt Company Ltd.
 SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
    </copyright>
  <interface name="zqt_vulkan_server_buffer_v1" version="1">
    <description summary="Internal protocol for buffer sharing using Vulkan external memory">
      This protocol is used internally by Qt for implementing the
      qt_server_buffer extension on hardware that supports Vulkan external memory .

      This protocol is not part of the Qt API.  It exists purely as an
      implementation detail and may change from version to
      version without notice, or even be removed.
    </description>
    <event name="server_buffer_created">
      <description summary="vulkan buffer information">
        Informs the client about a newly created server buffer.
        The "fd" argument is a POSIX file descriptor representing the
        underlying resources of a Vulkan device memory object as defined
        in the GL_EXT_memory_object_fd extension.
      </description>
      <arg name="id" type="new_id" interface="qt_server_buffer"/>
      <arg name="fd" type="fd" summary="GL_EXT_memory_object_fd"/>
      <arg name="width" type="uint"/>
      <arg name="height" type="uint"/>
      <arg name="memory_size" type="uint" summary="size in bytes"/>
      <arg name="format" type="uint" summary="GL internal format"/>
    </event>
  </interface>
</protocol>
