X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=stdin.h;h=49fccf7c926ab0629aa19d663f29cb1c02a3d43b;hp=6931f330f440ca9005fadbbc93e11178bd9bee02;hb=11ef83c4abb2ccbdf3f99a8adf98749b2b0656c2;hpb=f8b73704e27c5b5fad77cfddd06951dabcc6bf56 diff --git a/stdin.h b/stdin.h index 6931f330..49fccf7c 100644 --- a/stdin.h +++ b/stdin.h @@ -1,27 +1,19 @@ /* - * Copyright (C) 2006 Andre Noll + * Copyright (C) 2006-2009 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ -/** \file stdin.h the stdin task structure and exported symbols from stdin.c */ +/** \file stdin.h The standard in task structure. */ -/** - * the task structure used for reading from stdin - */ +/** The task structure used for reading from stdin. */ struct stdin_task { - /** input buffer */ - char *buf; - /** the size of \a buf */ - size_t bufsize; - /** number of bytes currently loaded in \a buf */ - size_t loaded; - /** whether \p STDIN_FILENO was included in the read fd set */ - int check_fd; - /** the task structure */ + /** The task structure. */ struct task task; - /** non-zero on read error, or if a read from stdin returned zero */ - int eof; + /** Stdin is always the root of a buffer tree. */ + struct btr_node *btrn; + /* Use a buffer pool to minimize memcpy due to alignment problems. */ + struct btr_pool *btrp; }; void stdin_set_defaults(struct stdin_task *sit);