An abstract base class defining common methods for controlling a notification request.
IOService notification requests are represented as implementations of the IONotifier object. It defines methods to enable, disable and remove notification requests. These actions are synchronized with invocations of the notification handler, so removing a notification request will guarantee the handler is not being executed.
Available in OS X v10.0 and later.
Disables the notification request.
virtual bool disable() = 0;
Returns the previous enable state of the IONotifier.
Disables the notification request. This method is synchronous with any handler invocations, so when this method returns its guaranteed the handler will not be in entered.
Sets the enable state of the notification request.
virtual void enable( bool
was) = 0;
The enable state of the notifier to restore.
Restores the enable state of the notification request, given the previous state passed in.
Removes the notification request and releases it.
virtual void remove() = 0;
Removes the notification request and release it. Since creating an IONotifier instance will leave it with a retain count of one, creating an IONotifier and then removing it will destroy it. This method is synchronous with any handler invocations, so when this method returns its guaranteed the handler will not be in entered.