The STX ExecPipe library provides a convenient C++ interface to execute child programs connected via pipes. It is a front-end to the system calls fork(), pipe(), select(), and execv() and hides all the complexity of these low-level functions. It allows a program to build a sequence of connected children programs with the input and output of the pipe sequence redirected to a file, string, or file descriptor. The library also allows custom asynchronous data processing classes to be inserted into the pipe or placed at the source or sink of the sequence.
Cock provides a digital version of a petcock. A petcock is a valve or faucet used to drain pressure, as from a boiler. Cock drains I/O pressure from the kernel. Without parameters, the output rate automatically adjusts; cock defers output when necessary in order to mitigate I/O spikes. Otherwise, a numeric parameter specifies megabytes per second.