bool OEGetUniqueProtomer(OEChem::OEMolBase &dst, const OEChem::OEMolBase &mol)
bool OEGetUniqueProtomer(OEChem::OEMCMolBase &dst, const OEChem::OEMCMolBase &mol)

This function will attempt to produce a single protomer that can be used to generate a canonical representation of all tautomers of this molecule. All charge states or tautomer representations of a molecule should generate the same unique tautomer.


The unique protomer is NOT necessarily the low energy tautomer, or a scientifically reasonable tautomer. It is a tautomer useful for generating canonical hash strings. The unique protomer can be used to generate single or multiple protomers suitable for visualization by passing then through the OEGetReasonableTautomers functions.

See also