78 lines
3.7 KiB
XML
78 lines
3.7 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<protocol name="gamescope_control">
|
|
|
|
<copyright>
|
|
Copyright © 2023 Valve Corporation
|
|
|
|
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>
|
|
|
|
<description summary="gamescope-specific protocol">
|
|
This is a private Gamescope protocol. Regular Wayland clients must not use
|
|
it.
|
|
</description>
|
|
|
|
<interface name="gamescope_control" version="2">
|
|
<request name="destroy" type="destructor"></request>
|
|
|
|
<enum name="feature">
|
|
<description summary="gamescope feature types">
|
|
Enum of the features supported by Gamescope.
|
|
</description>
|
|
<entry name="done" value="0" summary="sent at the end of the feature list"/>
|
|
<entry name="reshade_shaders" value="1"/>
|
|
<entry name="display_info" value="2"/>
|
|
<entry name="pixel_filter" value="3"/>
|
|
</enum>
|
|
|
|
<event name="feature_support">
|
|
<description summary="feature supported">
|
|
Says whether a feature is supported and the version.
|
|
</description>
|
|
<arg name="feature" type="uint" summary="one of the enum features"/>
|
|
<arg name="version" type="uint" summary="feature version"/>
|
|
<arg name="flags" type="uint" summary="feature flags"/>
|
|
</event>
|
|
|
|
<enum name="display_flag" bitfield="true" since="2">
|
|
<entry name="internal_display" value="0x1"/>
|
|
<entry name="supports_hdr" value="0x2"/>
|
|
<entry name="supports_vrr" value="0x4"/>
|
|
</enum>
|
|
|
|
<event name="active_display_info" since="2">
|
|
<arg name="connector_name" type="string"/>
|
|
<arg name="display_make" type="string"/>
|
|
<arg name="display_model" type="string"/>
|
|
<arg name="display_flags" type="uint" enum="display_flag" summary="combination of 'display_flag' values"/>
|
|
<arg name="valid_refresh_rates" type="array" summary="valid refresh rates for the display for the purposes of combined fps limiting + refresh. empty if fixed at a mode. 32-bit unsigned integers."/>
|
|
</event>
|
|
|
|
<enum name="target_refresh_cycle_flag" bitfield="true" since="2">
|
|
<entry name="internal_display" value="0x1" summary="Whether we should change the target refresh cycle under external/internal display"/>
|
|
<entry name="allow_refresh_switching" value="0x2" summary="Whether or not to allow refresh rate switching"/>
|
|
</enum>
|
|
|
|
<request name="set_app_target_refresh_cycle" since="2">
|
|
<arg name="fps" type="uint" summary="application's target refresh cycle in frames-per-second. 0 = disabled/native"></arg>
|
|
<arg name="flags" type="uint" enum="target_refresh_cycle_flag" summary="combination of 'target_refresh_cycle_flag' values"/>
|
|
</request>
|
|
</interface>
|
|
</protocol>
|