10 #ifndef _RD_CHEMTRANSFORMS_H__ 11 #define _RD_CHEMTRANSFORMS_H__ 13 #include <boost/smart_ptr.hpp> 38 bool onlyFrags =
false,
bool useChirality =
false);
80 bool replaceAll =
false,
unsigned int replacementConnectionPoint = 0,
81 bool useChirality =
false);
99 bool useChirality =
false);
139 bool replaceDummies =
true,
140 bool labelByIndex =
false,
141 bool requireDummyMatch =
false);
175 bool replaceDummies =
true,
bool labelByIndex =
false,
176 bool requireDummyMatch =
false,
bool useChirality =
false);
227 ROMol &mol,
const std::map<std::string, ROMOL_SPTR> &queries,
228 const std::string &propName,
229 std::vector<std::pair<unsigned int, std::string> > *reactantLabels = NULL);
246 std::map<std::string, ROMOL_SPTR> &queryDefs,
247 bool standardize =
true,
248 const std::string &delimiter =
"\t",
249 const std::string &comment =
"//",
250 unsigned int nameColumn = 0,
251 unsigned int smartsColumn = 1);
254 std::map<std::string, ROMOL_SPTR> &queryDefs,
255 bool standardize =
true,
256 const std::string &delimiter =
"\t",
257 const std::string &comment =
"//",
258 unsigned int nameColumn = 0,
259 unsigned int smartsColumn = 1);
263 std::map<std::string, ROMOL_SPTR> &queryDefs,
264 bool standardize =
true,
265 const std::string &delimiter =
"\t",
266 const std::string &comment =
"//",
267 unsigned int nameColumn = 0,
268 unsigned int smartsColumn = 1);
ROMol * replaceCore(const ROMol &mol, const ROMol &core, const MatchVectType &matchVect, bool replaceDummies=true, bool labelByIndex=false, bool requireDummyMatch=false)
Returns a copy of an ROMol with the atoms and bonds that are referenced by the MatchVector removed...
std::vector< std::pair< int, int > > MatchVectType
used to return matches from substructure searching, The format is (queryAtomIdx, molAtomIdx) ...
ROMol * combineMols(const ROMol &mol1, const ROMol &mol2, RDGeom::Point3D offset=RDGeom::Point3D(0, 0, 0))
Combined two molecules to create a new one.
void addRecursiveQueries(ROMol &mol, const std::map< std::string, ROMOL_SPTR > &queries, const std::string &propName, std::vector< std::pair< unsigned int, std::string > > *reactantLabels=NULL)
Adds named recursive queries to a molecule's atoms based on atom.
ROMol is a molecule class that is intended to have a fixed topology.
ROMol * replaceSidechains(const ROMol &mol, const ROMol &coreQuery, bool useChirality=false)
Returns a copy of an ROMol with the atoms and bonds that don't fall within a substructure match remov...
void parseQueryDefFile(const std::string &filename, std::map< std::string, ROMOL_SPTR > &queryDefs, bool standardize=true, const std::string &delimiter="\, const std::string &comment="//", unsigned int nameColumn=0, unsigned int smartsColumn=1)
parses a query definition file and sets up a set of definitions suitable for use by addRecursiveQueri...
ROMol * MurckoDecompose(const ROMol &mol)
Carries out a Murcko decomposition on the molecule provided.
ROMol * deleteSubstructs(const ROMol &mol, const ROMol &query, bool onlyFrags=false, bool useChirality=false)
Returns a copy of an ROMol with the atoms and bonds that match a pattern removed. ...
boost::shared_ptr< ROMol > ROMOL_SPTR
std::vector< ROMOL_SPTR > replaceSubstructs(const ROMol &mol, const ROMol &query, const ROMol &replacement, bool replaceAll=false, unsigned int replacementConnectionPoint=0, bool useChirality=false)
Returns a list of copies of an ROMol with the atoms and bonds that match a pattern replaced with the ...
void parseQueryDefText(const std::string &queryDefText, std::map< std::string, ROMOL_SPTR > &queryDefs, bool standardize=true, const std::string &delimiter="\, const std::string &comment="//", unsigned int nameColumn=0, unsigned int smartsColumn=1)
equivalent to parseQueryDefFile() but the query definitions are