Creates an event tap for a specified process.
- macOS 10.4+
- Mac Catalyst 13.0+
- Core Graphics
The process to monitor.
The placement of the new event tap in the list of active event taps. Pass one of the constants listed in
A constant that specifies whether the new event tap is a passive listener or an active filter.
A bit mask that specifies the set of events to be observed. For a list of possible events, see
CGEvent. For information on how to specify the mask, see
CGEvent. If the event tap is not permitted to monitor one or more of the events specified in the
eventsparameter, then the appropriate bits in the mask are cleared. If that action results in an empty mask, this function returns
An event tap callback function that you provide. Your callback function is invoked from the run loop to which the event tap is added as a source. The thread safety of the callback is defined by the run loop’s environment. To learn more about event tap callbacks, see
Tap Call Back
A pointer to user-defined data. This pointer is passed into the callback function specified in the
A Core Foundation mach port that represents the new event tap, or
NULL if the event tap could not be created. When you are finished using the event tap, you should release the mach port using the function
CFRelease. Releasing the mach port also releases the tap.
This function creates an event tap that receives events being routed by the window server to the specified process. For more information about creating event taps, see