Any software that needs to encrypt data using OpenPGP, or to verify an OpenPGP signature on data, should use the stateless OpenPGP interface, or SOP, which is provided for a number of OpenPGP implementations. Using any other interface is going to lock in the software to that implementation.
Also, SOP is lovely to use from another program. It's designed to be nice to use from a program.