# Les fonctions de rappel d'un Watcher

Tous les watchers peuvent être actifs (en attente d'événements) ou inactifs (en pause). Seuls les watchers actifs peuvent avoir leurs fonctions de rappel d'appelées. Toutes les fonctions de rappel seront appelées avec au moins deux arguments : `watcher` - le watcher, et `revents`, un masque d'événements reçus.

Les fonctions de rappel des watchers sont passées aux constructeurs des watchers (une classe dérivée de EvWatcher - EvCheck::__construct(), EvChild::__construct() etc.). Une fonction de rappel d'un watcher doit correspondre au prototype suivant :

callback( object `$watcher` = NULL , int `$revents` = NULL ): void

`watcher`

  L'instance du watcher (d'une classe étendant EvWatcher).

`revents`

  Un watcher recevant les événements.

Chaque type de watcher a un octet d'associé dans `revents`, aussi, on peut utiliser la même fonction de rappel pour plusieurs watchers. Le masque d'événements est nommé après le type, i.e. EvChild (ou EvLoop::child()) définit `EV::CHILD`, EvPrepare (ou EvLoop::prepare()) définit `Ev::PREPARE`, EvPeriodic (ou EvLoop::periodic()) définit `Ev::PERIODIC` et ainsi de suite, avec comme exception les événements I/O (qui peuvent définir à la fois les octets `Ev::READ` et `Ev::WRITE`).