X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=filter.h;h=31f3ef15b8f4ea92e42caf8bf30cd992e0cf14be;hp=0808059dac3f7450aaa73c27d6afd4d382c62e94;hb=74c88020bd325865fe26ed25ea8ad0ace0924136;hpb=7584638594109184f329bead008f1dcdd9030767 diff --git a/filter.h b/filter.h index 0808059d..31f3ef15 100644 --- a/filter.h +++ b/filter.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2011 Andre Noll + * Copyright (C) 2005-2013 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -24,8 +24,11 @@ struct filter_node { struct list_head callbacks; /** A pointer to the configuration of this instance. */ void *conf; + /** The buffer tree node. */ struct btr_node *btrn; + /** The task corresponding to this filter node. */ struct task task; + /** The minimal input queue size, see \ref btr_node_status(). */ size_t min_iqs; }; @@ -106,7 +109,7 @@ struct filter { * post_select function is supposed to set t->error to a (negative) * error code. */ - void (*post_select)(struct sched *s, struct task *t); + int (*new_post_select)(struct sched *s, struct task *t); /** * Answer a buffer tree query. * @@ -136,6 +139,7 @@ static inline void write_int16_host_endian(char *buf, int val) DECLARE_FILTER_INITS +/** Iterate over the array of supported filters. */ #define FOR_EACH_SUPPORTED_FILTER(j) for (j = 0; j < NUM_SUPPORTED_FILTERS; j++) /** The filter array, one structure for each supported filter. */