63 lines
1.7 KiB
ReStructuredText
63 lines
1.7 KiB
ReStructuredText
|
==============
|
||
|
drmHandleEvent
|
||
|
==============
|
||
|
|
||
|
-----------------------------------
|
||
|
read and process pending DRM events
|
||
|
-----------------------------------
|
||
|
|
||
|
:Date: September 2012
|
||
|
:Manual section: 3
|
||
|
:Manual group: Direct Rendering Manager
|
||
|
|
||
|
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://gitlab.freedesktop.org/mesa/drm/-/issues
|
||
|
|
||
|
See Also
|
||
|
========
|
||
|
|
||
|
**drm**\ (7), **drm-kms**\ (7), **drmModePageFlip**\ (3),
|
||
|
**drmWaitVBlank**\ (3)
|