--- multiplexer/dispatch.c 2001/04/03 21:14:33 1.2 +++ multiplexer/dispatch.c 2001/04/09 15:26:03 1.3 @@ -33,6 +33,17 @@ boolean dispatch_init (void) return (TRUE); } +/* Dispatch work to the modules as needed. + * Mainly, check a few internal conditions (buffer space, + * data availability), check the corresponding file with + * poll for readiness, then do something at the appropriate + * points to push data forward. + * Data is pushed thru the multiplexer unidirectionally: + * input --> f.rawdata --> s.pesdata --> o.spliceddata --> output + * The main loop continues as long as there is something to do. + * Thereafter, the last two stages may generate a finish and + * another loop tries to pump the buffers out. + */ void dispatch (void) { boolean bi, bo, bs;