5 #ifndef BALL_STRUCTURE_SMARTSMATCHER_H
6 #define BALL_STRUCTURE_SMARTSMATCHER_H
8 #ifndef BALL_STRUCTURE_SMARTSPARSER_H
49 typedef std::vector<std::set<const Atom*> >
Match;
72 void match(
Match& matches,
Molecule& mol,
const String& smarts,
const std::set<const Atom*>& start_atoms)
76 void match(std::vector<Match>& matches,
Molecule& mol,
const std::vector<String>& smarts)
80 void match(std::vector<Match>& matches,
Molecule& mol,
const std::vector<String>& smarts,
const std::set<const Atom*>& start_atoms)
84 void setSSSR(
const std::vector<std::vector<Atom*> >& sssr);
245 void dump(
const String& name,
Size depth_ = 0);
257 bool evaluateRingEdges_(
const std::set<const Atom*>& matching,
const std::map<const SPNode*, const Atom*>& mapping,
const String& smarts);
275 std::vector<std::vector<Atom*> >
sssr_;
283 #endif // BALL_STRUCTURE_SMARTSMATCHER_H