glXSelectEventSGIX(3G)
glXSelectEventSGIX - select GLX events for a window or a GLX pixel buffer
As shipped in IRIX 6.5.7. Unchanged since IRIX 6.5.
NAME glXSelectEventSGIX - select GLX events for a window or a GLX pixel buffer C SPECIFICATION void glXSelectEventSGIX( Display *dpy, GLXDrawable drawable, unsigned long mask ) PARAMETERS dpy Specifies the connection to the X server. drawable Specifies a GLX drawable. Must be a GLX pixel buffer or a window. mask Specifies the events to returned for drawable. DESCRIPTION glXSelectEventSGIX sets the GLX event mask for a GLX pixel buffer or a window. Calling glXSelectEventSGIX overrides any previous event mask that was set by the client for drawable. Note that it does not affect the event masks which other clients may have specified for drawable since each client rendering to drawable has a separate event mask for it. Currently only one GLX event, GLX_BUFFER_CLOBBER_MASK_SGIX, can be selected. The following data is returned to the client when a GLX_BUFFER_CLOBBER_MASK_SGIX event occurs: typdef struct { int event_type; /* GLX_DAMAGED_SGIX or GLX_SAVED_SGIX */ int draw_type; /* GLX_WINDOW_SGIX or GLX_PBUFFER_SGIX */ unsigned long serial; /* # of last request processed by server */ Bool send_event; /* true if this came for SendEvent request */ Display *display; /* display the event was read from */ GLXDrawable drawable; /* i.d. of Drawable */ unsigned int mask; /* mask indicating which buffers are affected*/ int x, y; int width, height; int count; /* if nonzero, at least this many more */ } GLXBufferClobberEventSGIX; A single X server operation can cause several buffer clobber events to be sent. (e.g., a single GLX pixel buffer may be damaged and cause multiple buffer clobber events to be generated). Each event specifies one region of the GLX drawable that was affected by the X Server operation. The mask field indicates which color buffers and ancillary buffers were affected. All the buffer clobber events generated by a single X server action are guaranteed to be contiguous in the event queue. The conditions under which this event is generated and the event type varies, depending on the type of the GLX drawable. For preserved GLX pixel buffers, a buffer clobber event, with type GLX_SAVED_SGIX, is generated whenever the contents of the GLX pixel buffer is moved out of offscreen memory. The event(s) describes which portions of the GLX pixel buffer were affected. Clients who receive many buffer clobber events, referring to different save actions, should consider freeing the GLX pixel buffer resource in order to prevent the system from thrashing due to insufficient resources. For an unpreserved GLXPbuffer a buffer clobber event, with type GLX_DAMAGED_SGIX, is generated whenever a portion of the GLX pixel buffer becomes invalid. The client may wish to regenerate the invalid portions of the GLX pixel buffer. For Windows, buffer clobber events, with type GLX_DAMAGED_SGIX or GLX_SAVED_SGIX, occur whenever an ancillary buffer, associated with the window, gets clobbered or moved out of offscreen memory. The event contains information indicating which color buffers and ancillary buffers--and which portions of those buffers--were affected. NOTES glXSelectEventSGIX is part of the SGIX_pbuffer extension. ERRORS GLXBadDrawable is generated if drawable is not a valid window or a valid GLX pixel buffer. ASSOCIATED GETS glXGetSelectedEventSGIX MACHINE DEPENDENCIES The SGIX_pbuffer extension is supported only on RealityEngine, RealityEngine2, and VTX systems, on InfiniteReality systems, on High Impact and Maximum Impact systems, and on O2 systems. SEE ALSO glXCreateGLXPbufferSGIX