11 #ifndef RDKIT_RGROUPDECOMP_H
12 #define RDKIT_RGROUPDECOMP_H
14 #include "../RDKitBase.h"
69 unsigned int alignment =
MCS,
70 unsigned int chunkSize = 5,
71 bool matchOnlyAtRGroups =
false,
72 bool removeHydrogenOnlyGroups =
true,
73 bool removeHydrogensPostMatch =
true)
75 matchingStrategy(strategy),
76 rgroupLabelling(labelling),
79 onlyMatchAtRGroups(matchOnlyAtRGroups),
80 removeAllHydrogenRGroups(removeHydrogenOnlyGroups),
81 removeHydrogensPostMatch(removeHydrogensPostMatch),
85 unsigned int autoGetLabels(
const RWMol &);
88 bool prepareCore(
RWMol &,
const RWMol *alignCore);
94 typedef std::map<std::string, boost::shared_ptr<ROMol>>
RGroupRow;
100 struct RGroupDecompData;
102 RGroupDecompData *data;
117 int add(
const ROMol &mol);
121 std::vector<std::string> getRGroupLabels()
const;
130 const std::vector<ROMOL_SPTR> &cores,
const std::vector<ROMOL_SPTR> &mols,
131 RGroupRows &rows, std::vector<unsigned int> *unmatched =
nullptr,
136 const std::vector<ROMOL_SPTR> &cores,
const std::vector<ROMOL_SPTR> &mols,
137 RGroupColumns &columns, std::vector<unsigned int> *unmatched =
nullptr,