ev_pop(3event)


ev_pop -- pop the next event off the queue

Synopsis

cc . . . -levent

#include  <sys/types.h>
#include  <sys/param.h>
#include  <sys/sysmacros.h>
#include  <sys/page.h>
#include  <sys/event.h>
#include  <mouse.h>

int ev_pop()

Description

ev_pop clears the next event off the queue and returns the number of events that were lost due to queue overrun since the last ev_pop call. An event queue must have been opened with ev_init and ev_open.

After an application is done with an event, the event is popped off the queue. The queue is of fixed size, so if events are not popped fast enough some might be lost due to overrun. A counter maintains the number of lost events. When ev_pop is called, it clears the top event off of the queue, clears the counter and returns the number of lost events. This should always be zero, unless a program stops reading its event queue. If the queue is empty, ev_pop returns -1.

When ev_pop is called, the most recent pointer returned by ev_read must be considered invalid, since that storage may be overwritten by the event driver.

Return values

ev_pop returns -1 if there is not an open event queue. It returns -2 if there is nothing to pop because the queue is empty.

References

ev_block(3event), ev_close(3event), ev_count(3event), ev_flush(3event), ev_getdev(3event), ev_getemask(3event), ev_gindev(3event), ev_init(3event), ev_open(3event), ev_read(3event), ev_resume(3event), ev_setemask(3event), ev_suspend(3event)

Standards conformance

ev_pop is not part of any currently supported standard; it is an extension of AT&T System V provided by the Santa Cruz Operation.
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004