On 08/12/2012 21:32, David van der Spoel wrote: > On 2012-12-08 17:42, Noel O'Boyle wrote: >> C:\Users\Noel>obabel -:c1(Br)cc(Br)ccc1 -ofpt -xf fp4 -xs >>> >> Arylbromide Aromatic >> 1 molecule converted >> > Great, I can reproduce that. > Is there a simple way of getting this functionality from the source > code? I don't see any member functions in OBMol that could provide this?
As well as the core API, OpenBabel has some of its functionality in plugins. The code for the above feature is in the API code fingerprint.cpp, and in the plugins fingerprintformat.cpp and finger3.cpp. Probably the easiest way to access it is to use OB's conversion framework (Imitate the command line.). Something like: (untested) ifstream ifs(13-dibromobenzene.sdf); if(!ifs) return false; OBConversion conv(&ifs, &cout); if(!conv.SetInAndOutFormats("sdf", "fpt")) return false; conv.AddOption("f", OBConversion::OUTOPTIONS, "FP4"); conv.AddOption("s"); conv.Convert(); If you already have the OBMol, conv.Write() will do the output half. See http://openbabel.org/dev-api Chris >>>> is it possible with openbabel to classify a molecule based on >>>> substructures? >>>> >>>> E.g.: >>>> >>>> 110-dichlorodecane.sdf >>>> alkyl chloride >>>> >>>> 11122334455666-tetradecafluorohexane.sdf >>>> alkyl fluoride >>>> >>>> 111-trimethoxyethane.sdf >>>> orthocarboxylic acid derivative >>>> orthoester >>>> >>>> 13-dibromobenzene.sdf >>>> aryl bromide >>>> aromatic compound ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss