Nuclear Physics Pulse Processing library