xcb_damage_create - Man Page

Creates a Damage object to monitor changes to a drawable.

Synopsis

#include <xcb/damage.h>

Request function

xcb_void_cookie_t xcb_damage_create(xcb_connection_t *conn, xcb_damage_damage_t damage, xcb_drawable_t drawable, uint8_t level);

Request Arguments

conn

The XCB connection to X11.

damage

The ID with which you will refer to the new Damage object, created by xcb_generate_id.

drawable

The ID of the drawable to be monitored.

level

The level of detail to be provided in Damage events.

Description

This creates a Damage object to monitor changes to a drawable, and specifies the level of detail to be reported for changes.

We call changes made to pixel contents of windows and pixmaps 'damage' throughout this extension.

Damage accumulates as drawing occurs in the drawable.  Each drawing operation are guaranteed to include the set of pixels modified by each operation, but may include significantly more than just those pixels.  The desire is for the damage to strike a balance between the number of rectangles reported and the extraneous area included.  A reasonable goal is for each primitive object drawn (line, string, rectangle) to be represented as a single rectangle and for the damage area of the operation to be the union of these rectangles.

The DAMAGE extension allows applications to either receive the raw rectangles as a stream of events, or to have them partially processed within the X server to reduce the amount of data transmitted as well as reduce the processing latency once the repaint operation has started.

The Damage object holds any accumulated damage region and reflects the relationship between the drawable selected for damage notification and the drawable for which damage is tracked.

Return Value

Returns an xcb_void_cookie_t. Errors (if any) have to be handled in the event loop.

If you want to handle errors directly with xcb_request_check instead, use xcb_damage_create_checked. See xcb-requests(3) for details.

Errors

This request does never generate any errors.

See Also

xcb-requests(3)

Author

Generated from damage.xml. Contact xcb@lists.freedesktop.org for corrections and improvements.

Referenced By

The man page xcb_damage_create_checked(3) is an alias of xcb_damage_create(3).

libxcb 1.17.0 X Version 11 XCB Requests