GetOSEvent
GetOSEvent Low-level read event and remove event from event queue
#include <OSEvents.h> Event Manager
Boolean GetOSEvent( eventMask, theEvent );
short eventMask ; bit flags for events; 0xFFFF is all events
EventRecord *theEvent ; receives the 16-byte event record
returns Is theEvent a null event?
GetOSEvent is identical to OSEventAvail except that removes the event
from the event queue. Unlike GetNextEvent or WaitNextEvent,
GetOSEvent doesn't call the Desk Manager to see if the system wants to
intercept and respond to the event, nor does it perform GetNextEvent's or
WaitNextEvent's processing of the alarm and Command-Shift- number
combinations.
eventMask is a 16-bit binary mask describing which events to
include/exclude. Use eventMask =everyEvent ( defined as -1) to
include all events. See GetNextEvent for the layout.
Some events (e.g., keyUp events) may never make it into the
event queue. See SetEventMask.
theEvent is the address of a 16-byte EventRecord. Upon return, it is filled
with an event description. See GetNextEvent or WaitNextEvent.
Returns: a Boolean value; it identifies whether a requested event was found.
It will be one of:
FALSE This is a null event or one you did not request. Ignore it.
TRUE This event is intended for you. Examine and respond.

Notes: The Event Manager usually keeps only 20 events, scrapping the oldest
unread events to make room for new ones.