+ /**
+ * Prepare the fd sets for select.
+ *
+ * This is called from the writer node group task's pre_select(). It
+ * may use the sched pointer to add any file descriptors or to decrease
+ * the select timeout. It must return positive on success and negative
+ * on errors.
+ */
+ int (*pre_select)(struct sched *s, struct writer_node *wn);
+ void (*pre_select_btr)(struct sched *s, struct task *t);
+ /**
+ * Write audio data.
+ *
+ * Called from the post_select function of the wng task. It must keep
+ * track of the number of bytes consumed from the wng's buffer via
+ * the \p wn->written variable (which may be modified by the wng handling
+ * functions). This function must return positive on success and
+ * negative on errors.
+ */
+ int (*post_select)(struct sched *s, struct writer_node *wn);
+ void (*post_select_btr)(struct sched *s, struct task *t);
+ /**
+ * Close one instance of the writer.
+ *
+ * This function is assumed to succeed.
+ */