- /**
- * Add file descriptors to fd_sets and compute timeout for select(2).
- *
- * The pre_select function gets called from the driving application
- * before entering its select loop. The receiver may use this hook to
- * add any file descriptors to the sets of file descriptors given by \a
- * s.
- *
- * \sa select(2), time.c struct task, struct sched.
- */
- void (*pre_select)(struct sched *s, void *context);
- /**
- * Evaluate the result from select().
- *
- * This hook gets called after the call to select(). It should check
- * all file descriptors which were added to any of the fd sets during
- * the previous call to pre_select. According to the result, it may
- * then use any non-blocking I/O to establish a connection or to
- * receive the audio data.
- *
- * \sa select(2), struct receiver.
- */
- int (*post_select)(struct sched *s, void *context);
-
+ /** Ask the scheduler to monitor receive fds. */
+ void (*pre_monitor)(struct sched *s, void *context);
+ /** Receive data and make it available to consumers. */
+ int (*post_monitor)(struct sched *s, void *context);