DRMHANDLEEVENT(3)

NAME
drmHandleEvent - read and process pending DRM events

SYNOPSIS
#include <xf86drm.h>
int
drmHandleEvent(int fd, drmEventContextPtr evctx);

DESCRIPTION
drmHandleEvent() processes outstanding DRM events on the DRM file-descriptor passed as fd. This function should be called after the DRM file-descriptor has polled readable; it will read the events and use the passed-in evctx structure to call function pointers with the parameters noted below:

    typedef struct _drmEventContext {
        int version;
        void (*vblank_handler) (int fd,
                                unsigned int sequence,
                                unsigned int tv_sec,
                                unsigned int tv_usec,
                                void *user_data)
        void (*page_flip_handler) (int fd,
                                   unsigned int sequence,
                                   unsigned int tv_sec,
                                   unsigned int tv_usec,
                                   void *user_data)
    } drmEventContext, *drmEventContextPtr;

RETURN VALUE
drmHandleEvent() returns ‘0’ on success, or if there is no data to read from the file-descriptor. Returns ‘-1’ if the read on the file-descriptor fails or returns less than a full event record.

REPORTING BUGS
Bugs in this function should be reported to https://bugs.freedesktop.org/enter_bug.cgi?product=DRI&component=libdrm under the "DRI" product, component "libdrm"

SEE ALSO
drm(7), drm-kms(7), drmModePageFlip(3), drmWaitVBlank(3)

AUTHORS
-nosplit Direct Rendering Manager

libdrm -split Developer: David Herrmann <dh.herrmann@googlemail.com>