pigpio provides a pipe interface to many of its functions.
The pipe interface is available whenever pigpio is running, either
because it has been started as a daemon, or it has been linked in
to a running user program.  The pipe interface can be disabled
by the program which initialises the library.  pigpiod offers
the -f option to disable the pipe interface.  User programs
should call gpioCfgInterfaces
if they wish to disable the pipe interface.
pigpio listens for commands on pipe /dev/pigpio.  The commands
consist of a command identifier with, depending on the command,
zero, one, or two parameters.  The result, if any, may be read
from pipe /dev/pigout.  If any errors are detected a message
will be written to pipe /dev/pigerr.
The format of the commands is identical to those used by pigs.