XReadDisplayQueryExtension(3X11)
XReadDisplayQueryExtension, XReadDisplayQueryVersion, XReadDisplay, XShmCreateReadDisplayBuf, XShmReadDisplayRects, XShmDestroyReadDisplayBuf - X readdisplay functions
As shipped in IRIX 6.5.30. Unchanged since IRIX 6.5.
NAME XReadDisplayQueryExtension, XReadDisplayQueryVersion, XReadDisplay, XShmCreateReadDisplayBuf, XShmReadDisplayRects, XShmDestroyReadDisplayBuf - X readdisplay functions SYNTAX #include <X11/extensions/readdisplay.h> Bool XReadDisplayQueryExtension ( Display *dpy, int *event_basep, int *error_basep); Status XReadDisplayQueryVersion ( Display *dpy, int *major_versionp, int *minor_versionp); XImage *XReadDisplay ( Display *dpy, Window src, int x, int y, unsigned int w, unsigned int h, unsigned long hints, unsigned long *hints_return); ShmReadDisplayBuf *XShmCreateReadDisplayBuf ( Display *dpy, char *data, XShmSegmentInfo *shminfo, int width, int height); Status XShmReadDisplayRects ( Display *dpy, Window src, XRectangle *pRects, int nRects, ShmReadDisplayBuf *shmbuf, int dstx, int dsty, unsigned long hints, unsigned long *hints_return ); void XShmDestroyReadDisplayBuf ( ShmReadDisplayBuf *shmbuf); ARGUMENTS dpy Specifies the connection to the X server. src Specifies the window from whose screen you want to read data. x y w h Specify the area of the screen you want to read data from. hints Specifies hints used by the server in reading the screen. The server is free to ignore any and all of these. hints_return If non-NULL, returns the hints the server actually used. data Pointer to a shared memory buffer. It can be NULL if the shared memory buffer has not been allocated yet. shminfo Pointer to a shared memory segment. (See MIT X Shared Memory extension) height Specifies the size of the shared memory buffer. pRects Specifies a list of rectangles to identify areas of the screen you want to read from. nRects Specifies the number of rectangles in the list. shmbuf Pointer to a shared memory buffer destination for the data. dstx dsty Specify the location in the shared memory buffer where the data is to be copied. DESCRIPTION This man page describes the X11 Read Display Extension, version 1.0 and version 1.1. Version 1.0 does not support the shared memory functions. This extension allows client programs to read device independent image information from the screen. XReadDisplay returns a pointer to an XImage structure containing 32 bit pixel values for the information in the specified box on the screen. The XImage is in ZPixmap format, with 8 bits per color component. The high 8 bits of the pixel value are defined to be zero unless otherwise specified by the hints. Any pixels which can not be read (either because they are off-screen, or because of layering considerations) are defined to be zero. To use the shared memory version of ReadDisplay the user should create a shared memory buffer using XShmCreateReadDisplayBuf(). The returned value is a descriptor for the shared memory buffer. After the buffer is created the shared memory segment must be created and attached using shmget(2) and shmat(2). The next step for the application is to tell the X Server to attach the shared memory segment. To do so, you should use XShmAttach() (from the MIT Shared Memory extension). To use X ReadDisplay with a shared memory buffer the application has to call XShmReadDisplayRects() passing a rectangle list of the area on the screen that is to be captured. The data will be returned in the shared memory buffer. The format of the returned data is the same as for the non-shared memory version. When finished using the shared memory buffer, it should be freed by calling XShmDestroyReadDisplayBuf(). PREDEFINED VALUES XRD_READ_ALPHA tells the server to read alpha planes into the upper 8 bits of the pixel value. XRD_IGNORE_NORMAL_LAYER tells the server to ignore windows in the normal layer. This is the layer the root window is in. XRD_TRANSPARENT tells the server to ignore pixels that are transparent, and read the color value of underlying pixels. Normally, transparent pixels are returned as if they were visible. XRD_READ_POINTER tells the server to include the mouse pointer in the returned image. The following hints apply for layered systems. Pixels from windows that are in ignored layers should be treated as if they were transparent. If an underlying pixel is nonexistent (as in the case of a window obscuring one in a higher layer), the pixel value is defined to be zero. XRD_IGNORE_LAYER_0 XRD_IGNORE_LAYER_1 XRD_IGNORE_LAYER_2 XRD_IGNORE_LAYER_3 XRD_IGNORE_LAYER_4 XRD_IGNORE_LAYER_5 XRD_IGNORE_LAYER_6 XRD_IGNORE_LAYER_7 XRD_IGNORE_LAYER_MINUS_1 XRD_IGNORE_LAYER_MINUS_2 XRD_IGNORE_LAYER_MINUS_3 XRD_IGNORE_LAYER_MINUS_4 XRD_IGNORE_LAYER_MINUS_5 XRD_IGNORE_LAYER_MINUS_6 XRD_IGNORE_LAYER_MINUS_7 These hints tell the server to ignore windows in the specified layer. Note: the following hints are a superset of the above hints in the case where there are layers beyond the range -7 to +7. XRD_IGNORE_POSITIVE_LAYERS tells the server to ignore windows in all layers above layer zero. XRD_IGNORE_NEGATIVE_LAYERS tells the server to ignore windows in all layers below layer zero.