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.