paraslash 0.6.2
[paraslash.git] / stdin.h
1 /* Copyright (C) 2006 Andre Noll <maan@tuebingen.mpg.de>, see file COPYING. */
2
3 /** \file stdin.h The standard in task structure. */
4
5 /** The task structure used for reading from stdin. */
6 struct stdin_task {
7         /** The task structure. */
8         struct task *task;
9         /** Stdin is always the root of a buffer tree. */
10         struct btr_node *btrn;
11         /** Use a buffer pool to minimize memcpy due to alignment problems. */
12         struct btr_pool *btrp;
13         /** The descriptor flags of STDIN at startup. */
14         int fd_flags;
15         /** Whether we have to set STDIN to nonblocking mode. */
16         bool must_set_nonblock_flag;
17 };
18
19 void stdin_task_register(struct stdin_task *sit, struct sched *s);