Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef _RD_SUBGRAPHUTILS_H_
00011 #define _RD_SUBGRAPHUTILS_H_
00012
00013 #include "Subgraphs.h"
00014 #include <boost/tuple/tuple.hpp>
00015 #include <boost/cstdint.hpp>
00016
00017 namespace RDKit{
00018 class ROMol;
00019
00020 namespace Subgraphs {
00021
00022 typedef boost::tuples::tuple<boost::uint32_t,boost::uint32_t,boost::uint32_t> DiscrimTuple;
00023
00024
00025 DiscrimTuple calcPathDiscriminators(const ROMol &mol,const PATH_TYPE &path,
00026 bool useBO=true,
00027 std::vector<boost::uint32_t> *extraInvars=0);
00028 PATH_LIST uniquifyPaths (const ROMol &mol, const PATH_LIST &allPathsb,
00029 bool useBO=true);
00030
00031
00032
00033 PATH_TYPE bondListFromAtomList(const ROMol &mol, const PATH_TYPE &atomIds);
00034
00035
00036
00037
00038
00039
00040
00041 ROMol *pathToSubmol(const ROMol &mol, const PATH_TYPE &path,
00042 bool useQuery,
00043 std::map<int,int> &atomIdxMap);
00044 ROMol *pathToSubmol(const ROMol &mol, const PATH_TYPE &path,
00045 bool useQuery=false);
00046 }
00047 }
00048
00049
00050 #endif