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>
DiscrimTuple;
27 std::vector<boost::uint32_t> *extraInvars=0);
43 std::map<int,int> &atomIdxMap);
ROMol * pathToSubmol(const ROMol &mol, const PATH_TYPE &path, bool useQuery, std::map< int, int > &atomIdxMap)
boost::tuples::tuple< boost::uint32_t, boost::uint32_t, boost::uint32_t > DiscrimTuple
used to return path discriminators (three unsigned ints):
ROMol is a molecule class that is intended to have a fixed topology.
std::list< PATH_TYPE > PATH_LIST
Includes a bunch of functionality for handling Atom and Bond queries.
PATH_LIST uniquifyPaths(const ROMol &mol, const PATH_LIST &allPathsb, bool useBO=true)
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