sched: Dont use fixed-size buffer for task names.
[paraslash.git] / filter.h
index 94657a738a4ae1b620148d28400c20ed4c27a710..7365f943f038583052695387ce261374d5051e63 100644 (file)
--- a/filter.h
+++ b/filter.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2005-2011 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2005-2014 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -27,7 +27,7 @@ struct filter_node {
        /** 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;
 };
@@ -106,10 +106,9 @@ struct filter {
         * 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, struct task *t);
        /**
         * Answer a buffer tree query.
         *
@@ -121,7 +120,7 @@ struct filter {
 
 void filter_init(void);
 int check_filter_arg(char *filter_arg, void **conf);
-void print_filter_helps(int detailed);
+void print_filter_helps(unsigned flags);
 void generic_filter_pre_select(struct sched *s, struct task *t);
 int decoder_execute(const char *cmd, unsigned sample_rate, unsigned channels,
                char **result);