Functions
zwlr_screencopy_manager_v1_set_user_data ()
void
zwlr_screencopy_manager_v1_set_user_data
(struct zwlr_screencopy_manager_v1 *zwlr_screencopy_manager_v1
,
void *user_data
);
zwlr_screencopy_manager_v1_get_user_data ()
void *
zwlr_screencopy_manager_v1_get_user_data
(struct zwlr_screencopy_manager_v1 *zwlr_screencopy_manager_v1
);
zwlr_screencopy_manager_v1_get_version ()
uint32_t
zwlr_screencopy_manager_v1_get_version
(struct zwlr_screencopy_manager_v1 *zwlr_screencopy_manager_v1
);
zwlr_screencopy_manager_v1_capture_output ()
struct zwlr_screencopy_frame_v1 *
zwlr_screencopy_manager_v1_capture_output
(struct zwlr_screencopy_manager_v1 *zwlr_screencopy_manager_v1
,
int32_t overlay_cursor
,
struct wl_output *output
);
zwlr_screencopy_manager_v1_capture_output_region ()
struct zwlr_screencopy_frame_v1 *
zwlr_screencopy_manager_v1_capture_output_region
(struct zwlr_screencopy_manager_v1 *zwlr_screencopy_manager_v1
,
int32_t overlay_cursor
,
struct wl_output *output
,
int32_t x
,
int32_t y
,
int32_t width
,
int32_t height
);
zwlr_screencopy_manager_v1_destroy ()
void
zwlr_screencopy_manager_v1_destroy (struct zwlr_screencopy_manager_v1 *zwlr_screencopy_manager_v1
);
zwlr_screencopy_frame_v1_add_listener ()
int
zwlr_screencopy_frame_v1_add_listener (struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1
,
const struct zwlr_screencopy_frame_v1_listener *listener
,
void *data
);
zwlr_screencopy_frame_v1_set_user_data ()
void
zwlr_screencopy_frame_v1_set_user_data
(struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1
,
void *user_data
);
zwlr_screencopy_frame_v1_get_user_data ()
void *
zwlr_screencopy_frame_v1_get_user_data
(struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1
);
zwlr_screencopy_frame_v1_get_version ()
uint32_t
zwlr_screencopy_frame_v1_get_version (struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1
);
zwlr_screencopy_frame_v1_copy ()
void
zwlr_screencopy_frame_v1_copy (struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1
,
struct wl_buffer *buffer
);
zwlr_screencopy_frame_v1_destroy ()
void
zwlr_screencopy_frame_v1_destroy (struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1
);
zwlr_screencopy_frame_v1_copy_with_damage ()
void
zwlr_screencopy_frame_v1_copy_with_damage
(struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1
,
struct wl_buffer *buffer
);
Types and Values
ZWLR_SCREENCOPY_MANAGER_V1_CAPTURE_OUTPUT
#define ZWLR_SCREENCOPY_MANAGER_V1_CAPTURE_OUTPUT
ZWLR_SCREENCOPY_MANAGER_V1_CAPTURE_OUTPUT_REGION
#define ZWLR_SCREENCOPY_MANAGER_V1_CAPTURE_OUTPUT_REGION
ZWLR_SCREENCOPY_MANAGER_V1_DESTROY
#define ZWLR_SCREENCOPY_MANAGER_V1_DESTROY
ZWLR_SCREENCOPY_MANAGER_V1_CAPTURE_OUTPUT_SINCE_VERSION
#define ZWLR_SCREENCOPY_MANAGER_V1_CAPTURE_OUTPUT_SINCE_VERSION
ZWLR_SCREENCOPY_MANAGER_V1_CAPTURE_OUTPUT_REGION_SINCE_VERSION
#define ZWLR_SCREENCOPY_MANAGER_V1_CAPTURE_OUTPUT_REGION_SINCE_VERSION
ZWLR_SCREENCOPY_MANAGER_V1_DESTROY_SINCE_VERSION
#define ZWLR_SCREENCOPY_MANAGER_V1_DESTROY_SINCE_VERSION
ZWLR_SCREENCOPY_FRAME_V1_ERROR_ENUM
#define ZWLR_SCREENCOPY_FRAME_V1_ERROR_ENUM
enum zwlr_screencopy_frame_v1_error
ZWLR_SCREENCOPY_FRAME_V1_FLAGS_ENUM
#define ZWLR_SCREENCOPY_FRAME_V1_FLAGS_ENUM
enum zwlr_screencopy_frame_v1_flags
struct zwlr_screencopy_frame_v1_listener
struct zwlr_screencopy_frame_v1_listener {
/**
* buffer information
*
* Provides information about the frame's buffer. This event is
* sent once as soon as the frame is created.
*
* The client should then create a buffer with the provided
* attributes, and send a "copy" request.
* @param format buffer format
* @param width buffer width
* @param height buffer height
* @param stride buffer stride
*/
void (*buffer)(void *data,
struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1,
uint32_t format,
uint32_t width,
uint32_t height,
uint32_t stride);
/**
* frame flags
*
* Provides flags about the frame. This event is sent once before
* the "ready" event.
* @param flags frame flags
*/
void (*flags)(void *data,
struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1,
uint32_t flags);
/**
* indicates frame is available for reading
*
* Called as soon as the frame is copied, indicating it is
* available for reading. This event includes the time at which
* presentation happened at.
*
* The timestamp is expressed as tv_sec_hi, tv_sec_lo, tv_nsec
* triples, each component being an unsigned 32-bit value. Whole
* seconds are in tv_sec which is a 64-bit value combined from
* tv_sec_hi and tv_sec_lo, and the additional fractional part in
* tv_nsec as nanoseconds. Hence, for valid timestamps tv_nsec must
* be in [0, 999999999]. The seconds part may have an arbitrary
* offset at start.
*
* After receiving this event, the client should destroy the
* object.
* @param tv_sec_hi high 32 bits of the seconds part of the timestamp
* @param tv_sec_lo low 32 bits of the seconds part of the timestamp
* @param tv_nsec nanoseconds part of the timestamp
*/
void (*ready)(void *data,
struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1,
uint32_t tv_sec_hi,
uint32_t tv_sec_lo,
uint32_t tv_nsec);
/**
* frame copy failed
*
* This event indicates that the attempted frame copy has failed.
*
* After receiving this event, the client should destroy the
* object.
*/
void (*failed)(void *data,
struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1);
/**
* carries the coordinates of the damaged region
*
* This event is sent right before the ready event when
* copy_with_damage is requested. It may be generated multiple
* times for each copy_with_damage request.
*
* The arguments describe a box around an area that has changed
* since the last copy request that was derived from the current
* screencopy manager instance.
*
* The union of all regions received between the call to
* copy_with_damage and a ready event is the total damage since the
* prior ready event.
* @param x damaged x coordinates
* @param y damaged y coordinates
* @param width current width
* @param height current height
* @since 2
*/
void (*damage)(void *data,
struct zwlr_screencopy_frame_v1 *zwlr_screencopy_frame_v1,
uint32_t x,
uint32_t y,
uint32_t width,
uint32_t height);
};
ZWLR_SCREENCOPY_FRAME_V1_COPY
#define ZWLR_SCREENCOPY_FRAME_V1_COPY
ZWLR_SCREENCOPY_FRAME_V1_DESTROY
#define ZWLR_SCREENCOPY_FRAME_V1_DESTROY
ZWLR_SCREENCOPY_FRAME_V1_COPY_WITH_DAMAGE
#define ZWLR_SCREENCOPY_FRAME_V1_COPY_WITH_DAMAGE
ZWLR_SCREENCOPY_FRAME_V1_BUFFER_SINCE_VERSION
#define ZWLR_SCREENCOPY_FRAME_V1_BUFFER_SINCE_VERSION
ZWLR_SCREENCOPY_FRAME_V1_FLAGS_SINCE_VERSION
#define ZWLR_SCREENCOPY_FRAME_V1_FLAGS_SINCE_VERSION
ZWLR_SCREENCOPY_FRAME_V1_READY_SINCE_VERSION
#define ZWLR_SCREENCOPY_FRAME_V1_READY_SINCE_VERSION
ZWLR_SCREENCOPY_FRAME_V1_FAILED_SINCE_VERSION
#define ZWLR_SCREENCOPY_FRAME_V1_FAILED_SINCE_VERSION
ZWLR_SCREENCOPY_FRAME_V1_DAMAGE_SINCE_VERSION
#define ZWLR_SCREENCOPY_FRAME_V1_DAMAGE_SINCE_VERSION
ZWLR_SCREENCOPY_FRAME_V1_COPY_SINCE_VERSION
#define ZWLR_SCREENCOPY_FRAME_V1_COPY_SINCE_VERSION
ZWLR_SCREENCOPY_FRAME_V1_DESTROY_SINCE_VERSION
#define ZWLR_SCREENCOPY_FRAME_V1_DESTROY_SINCE_VERSION
ZWLR_SCREENCOPY_FRAME_V1_COPY_WITH_DAMAGE_SINCE_VERSION
#define ZWLR_SCREENCOPY_FRAME_V1_COPY_WITH_DAMAGE_SINCE_VERSION
struct wl_buffer
struct wl_buffer;
struct wl_output
struct wl_output;
struct zwlr_screencopy_frame_v1
struct zwlr_screencopy_frame_v1;
struct zwlr_screencopy_manager_v1
struct zwlr_screencopy_manager_v1;