11 #ifndef RDKIT_RGROUPDECOMP_H 12 #define RDKIT_RGROUPDECOMP_H 14 #include "../RDKitBase.h" 67 unsigned int alignment =
MCS,
68 unsigned int chunkSize = 5,
69 bool matchOnlyAtRGroups =
false,
70 bool removeHydrogenOnlyGroups =
true,
71 bool removeHydrogensPostMatch =
false)
73 matchingStrategy(strategy),
74 rgroupLabelling(labelling),
77 onlyMatchAtRGroups(matchOnlyAtRGroups),
78 removeAllHydrogenRGroups(removeHydrogenOnlyGroups),
79 removeHydrogensPostMatch(removeHydrogensPostMatch),
81 bool prepareCore(
RWMol &,
const RWMol *alignCore);
87 typedef std::map<std::string, boost::shared_ptr<ROMol>>
RGroupRow;
93 struct RGroupDecompData;
95 RGroupDecompData *data;
110 int add(
const ROMol &mol);
114 RGroupRows getRGroupsAsRows()
const;
116 RGroupColumns getRGroupsAsColumns()
const;
120 const std::vector<ROMOL_SPTR> &mols,
122 std::vector<unsigned int> *unmatched = 0,
127 const std::vector<ROMOL_SPTR> &mols,
128 RGroupColumns &columns,
129 std::vector<unsigned int> *unmatched = 0,
RDKIT_RGROUPDECOMPOSITION_EXPORT unsigned int RGroupDecompose(const std::vector< ROMOL_SPTR > &cores, const std::vector< ROMOL_SPTR > &mols, RGroupRows &rows, std::vector< unsigned int > *unmatched=0, const RGroupDecompositionParameters &options=RGroupDecompositionParameters())
RWMol is a molecule class that is intended to be edited.
bool removeHydrogensPostMatch
std::vector< boost::shared_ptr< ROMol > > RGroupColumn
#define RDKIT_RGROUPDECOMPOSITION_EXPORT
std::vector< RGroupRow > RGroupRows
bool removeAllHydrogenRGroups
std::map< std::string, boost::shared_ptr< ROMol > > RGroupRow
std::map< std::string, RGroupColumn > RGroupColumns
RGroupDecompositionParameters(unsigned int labels=AutoDetect, unsigned int strategy=GreedyChunks, unsigned int labelling=AtomMap|MDLRGroup, unsigned int alignment=MCS, unsigned int chunkSize=5, bool matchOnlyAtRGroups=false, bool removeHydrogenOnlyGroups=true, bool removeHydrogensPostMatch=false)
unsigned int rgroupLabelling
unsigned int matchingStrategy