10 #ifndef _RD_SUBGRAPHUTILS_H_ 11 #define _RD_SUBGRAPHUTILS_H_ 14 #include <boost/tuple/tuple.hpp> 15 #include <boost/cstdint.hpp> 22 typedef boost::tuples::tuple<boost::uint32_t, boost::uint32_t, boost::uint32_t>
27 std::vector<boost::uint32_t> *extraInvars = 0);
43 std::map<int, int> &atomIdxMap);
45 bool useQuery =
false);
ROMol * pathToSubmol(const ROMol &mol, const PATH_TYPE &path, bool useQuery, std::map< int, int > &atomIdxMap)
ROMol is a molecule class that is intended to have a fixed topology.
std::list< PATH_TYPE > PATH_LIST
PATH_LIST uniquifyPaths(const ROMol &mol, const PATH_LIST &allPathsb, bool useBO=true)
boost::tuples::tuple< boost::uint32_t, boost::uint32_t, boost::uint32_t > DiscrimTuple
used to return path discriminators (three unsigned ints):
PATH_TYPE bondListFromAtomList(const ROMol &mol, const PATH_TYPE &atomIds)
DiscrimTuple calcPathDiscriminators(const ROMol &mol, const PATH_TYPE &path, bool useBO=true, std::vector< boost::uint32_t > *extraInvars=0)
functionality for finding subgraphs and paths in molecules
std::vector< int > PATH_TYPE