Documentation for <wlr/render/drm_syncobj_merger.h>

Back to index

Table of contents

struct wlr_drm_syncobj_merger

struct wlr_drm_syncobj_merger {
	int n_ref;
	struct wlr_drm_syncobj_timeline *dst_timeline;
	uint64_t dst_point;
	int sync_fd;
};

Accumulate timeline points, to have a destination timeline point be signalled when all inputs are

wlr_drm_syncobj_merger_add()

bool wlr_drm_syncobj_merger_add(​struct wlr_drm_syncobj_merger *merger, struct wlr_drm_syncobj_timeline *dst_timeline, uint64_t dst_point, struct wl_event_loop *loop);

wlr_drm_syncobj_merger_create()

struct wlr_drm_syncobj_merger *wlr_drm_syncobj_merger_create(​struct wlr_drm_syncobj_timeline *dst_timeline, uint64_t dst_point);

Create a new merger.

The given timeline point will be signalled when all input points are signalled and the merger is released.

wlr_drm_syncobj_merger_unref()

void wlr_drm_syncobj_merger_unref(​struct wlr_drm_syncobj_merger *merger);

Unreference merger. Target timeline point is materialized when the merger is dropped