/*
- * Copyright (C) 2005-2012 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2005-2014 Andre Noll <maan@tuebingen.mpg.de>
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
/** The buffer tree node. */
struct btr_node *btrn;
/** The task corresponding to this filter node. */
- struct task task;
+ struct task *task;
/** The minimal input queue size, see \ref btr_node_status(). */
size_t min_iqs;
};
* this function is to set file descriptors to be watched by the
* subsequent select call to the two fd sets.
*/
- void (*pre_select)(struct sched *s, struct task *t);
+ void (*pre_select)(struct sched *s, void *context);
/**
* Convert (filter) the given data.
*
* Pointer to the converting function of the filter. On errors, the
- * post_select function is supposed to set t->error to a (negative)
- * error code.
+ * post_select function is supposed to return a negative error code.
*/
- void (*post_select)(struct sched *s, struct task *t);
+ int (*post_select)(struct sched *s, void *context);
/**
* Answer a buffer tree query.
*
void filter_init(void);
int check_filter_arg(char *filter_arg, void **conf);
-void print_filter_helps(int detailed);
-void generic_filter_pre_select(struct sched *s, struct task *t);
+void print_filter_helps(unsigned flags);
+void generic_filter_pre_select(struct sched *s, void *context);
int decoder_execute(const char *cmd, unsigned sample_rate, unsigned channels,
char **result);