mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-11-21 22:52:20 +00:00
render: add explicit sync API
This commit is contained in:
parent
4481c6b243
commit
a1635fdb76
@ -33,6 +33,17 @@ struct wlr_buffer_pass_options {
|
|||||||
/* Color transform to apply to the output of the render pass,
|
/* Color transform to apply to the output of the render pass,
|
||||||
* leave NULL to indicate sRGB/no custom transform */
|
* leave NULL to indicate sRGB/no custom transform */
|
||||||
struct wlr_color_transform *color_transform;
|
struct wlr_color_transform *color_transform;
|
||||||
|
|
||||||
|
/* Signal a timeline synchronization point when the render pass completes.
|
||||||
|
*
|
||||||
|
* When a compositor provides a signal timeline, the renderer may skip
|
||||||
|
* implicit signal synchronization.
|
||||||
|
*
|
||||||
|
* Support for this feature is advertised by features.timeline in
|
||||||
|
* struct wlr_renderer.
|
||||||
|
*/
|
||||||
|
struct wlr_drm_syncobj_timeline *signal_timeline;
|
||||||
|
uint64_t signal_point;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -88,6 +99,17 @@ struct wlr_render_texture_options {
|
|||||||
enum wlr_scale_filter_mode filter_mode;
|
enum wlr_scale_filter_mode filter_mode;
|
||||||
/* Blend mode */
|
/* Blend mode */
|
||||||
enum wlr_render_blend_mode blend_mode;
|
enum wlr_render_blend_mode blend_mode;
|
||||||
|
|
||||||
|
/* Wait for a timeline synchronization point before texturing.
|
||||||
|
*
|
||||||
|
* When a compositor provides a wait timeline, the renderer may skip
|
||||||
|
* implicit wait synchronization.
|
||||||
|
*
|
||||||
|
* Support for this feature is advertised by features.timeline in
|
||||||
|
* struct wlr_renderer.
|
||||||
|
*/
|
||||||
|
struct wlr_drm_syncobj_timeline *wait_timeline;
|
||||||
|
uint64_t wait_point;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -45,6 +45,12 @@ struct wlr_renderer {
|
|||||||
* Does the renderer support color transforms on its output?
|
* Does the renderer support color transforms on its output?
|
||||||
*/
|
*/
|
||||||
bool output_color_transform;
|
bool output_color_transform;
|
||||||
|
/**
|
||||||
|
* Whether wait/signal timelines are supported.
|
||||||
|
*
|
||||||
|
* See struct wlr_drm_syncobj_timeline.
|
||||||
|
*/
|
||||||
|
bool timeline;
|
||||||
} features;
|
} features;
|
||||||
|
|
||||||
// private state
|
// private state
|
||||||
|
Loading…
Reference in New Issue
Block a user