Documentation for <wlr/types/wlr_ext_image_capture_source_v1.h>

Back to index

Table of contents

struct wlr_ext_image_capture_source_v1

struct wlr_ext_image_capture_source_v1 {
	const struct wlr_ext_image_capture_source_v1_interface *impl;
	struct wl_list resources; // wl_resource_get_link()
	
	uint32_t width, height;
	
	uint32_t *shm_formats;
	size_t shm_formats_len;
	
	dev_t dmabuf_device;
	struct wlr_drm_format_set dmabuf_formats;
	
	struct {
		struct wl_signal constraints_update;
		struct wl_signal frame; // struct wlr_ext_image_capture_source_v1_frame_event
		struct wl_signal destroy;
	} events;
};

A screen capture source.

When the size, device or formats change, the constraints_update event is emitted.

The device and formats advertised are suitable for copying into a struct wlr_buffer.

struct wlr_ext_image_capture_source_v1_cursor

struct wlr_ext_image_capture_source_v1_cursor {
	struct wlr_ext_image_capture_source_v1 base;
	
	bool entered;
	int32_t x, y;
	struct {
		int32_t x, y;
	} hotspot;
	
	struct {
		struct wl_signal update;
	} events;
};

A cursor capture source.

Provides additional cursor-specific functionality on top of struct wlr_ext_image_capture_source_v1.

struct wlr_ext_image_capture_source_v1_frame_event

struct wlr_ext_image_capture_source_v1_frame_event {
	const pixman_region32_t *damage;
};

Event indicating that the source has produced a new frame.

wlr_ext_image_capture_source_v1_from_resource()

struct wlr_ext_image_capture_source_v1 *wlr_ext_image_capture_source_v1_from_resource(​struct wl_resource *resource);

Obtain a struct wlr_ext_image_capture_source_v1 from an ext_image_capture_source_v1 resource.

Asserts that the resource has the correct type. Returns NULL if the resource is inert.

struct wlr_ext_output_image_capture_source_manager_v1

struct wlr_ext_output_image_capture_source_manager_v1 {
	struct wl_global *global;
	
	struct {
		struct wl_listener display_destroy;
	} WLR_PRIVATE;
};

Interface exposing one screen capture source per output.

wlr_ext_output_image_capture_source_manager_v1_create()

struct wlr_ext_output_image_capture_source_manager_v1 *wlr_ext_output_image_capture_source_manager_v1_create(​struct wl_display *display, uint32_t version);