bool OEParseSmirks(OEQMolBase& mol, const char* smirks, unsigned int opt=OESmartsParseOpts::Default) bool OEParseSmirks(OEQMolBase& mo, const char* smirks, const OEVectorBindings &vb, unsigned int opt=OESmartsParseOpts::Default)
These functions generate a reaction molecule by parsing the given
If the SMIRKS string passed to the function is valid and
is parsed correctly the function will return a
otherwise the it will return
The SMARTS string that represents a molecular substructure query.
The parameter provides a mechanism for parsing a SMARTS pattern that contains vector bindings. An
OEVectorBindingsobject containing the complete set of possible vector bindings that may be contained in a SMIRKS pattern, including recursive vector bindings, and passed to the
OEParseSmartsfunction. Vector bindings will be resolved while the SMIRKS pattern is being parsed.
OEParseSmirks is functionally nearly identical to
OEParseSmarts. The only significant difference in
how SMARTS and SMIRKS are parsed is the handling of the
expression. SMARTS interprets
[H] as an atom that has a total
hydrogen count of exactly one. SMIRKS interprets
[H] as an
explicit hydrogen. The
[H] differently than would
OEParseSmarts, and performs additional validity
checks of the SMIRKS string.
Example program libgen.cpp