11#ifndef _RD_CHEMTRANSFORMS_H__
12#define _RD_CHEMTRANSFORMS_H__
14#include <boost/smart_ptr.hpp>
39 bool onlyFrags =
false,
40 bool useChirality =
false);
82 bool replaceAll =
false,
unsigned int replacementConnectionPoint = 0,
83 bool useChirality =
false);
100 const ROMol &coreQuery,
101 bool useChirality =
false);
138 bool replaceDummies =
true,
139 bool labelByIndex =
false,
140 bool requireDummyMatch =
false);
174 const ROMol &coreQuery,
175 bool replaceDummies =
true,
176 bool labelByIndex =
false,
177 bool requireDummyMatch =
false,
178 bool useChirality =
false);
230 ROMol &mol,
const std::map<std::string, ROMOL_SPTR> &queries,
231 const std::string &propName,
232 std::vector<std::pair<unsigned int, std::string>> *reactantLabels =
250 const std::string &filename, std::map<std::string, ROMOL_SPTR> &queryDefs,
251 bool standardize =
true,
const std::string &delimiter =
"\t",
252 const std::string &comment =
"//",
unsigned int nameColumn = 0,
253 unsigned int smartsColumn = 1);
256 std::istream *inStream, std::map<std::string, ROMOL_SPTR> &queryDefs,
257 bool standardize =
true,
const std::string &delimiter =
"\t",
258 const std::string &comment =
"//",
unsigned int nameColumn = 0,
259 unsigned int smartsColumn = 1);
263 const std::string &queryDefText,
264 std::map<std::string, ROMOL_SPTR> &queryDefs,
bool standardize =
true,
265 const std::string &delimiter =
"\t",
const std::string &comment =
"//",
266 unsigned int nameColumn = 0,
unsigned int smartsColumn = 1);
271 const ROMol &mol,
RWMol &res, boost::dynamic_bitset<> &removedAtoms);
273 const std::map<const Atom *, Atom *> &molAtomMap,
const ROMol &mol,
RWMol is a molecule class that is intended to be edited.
#define RDKIT_CHEMTRANSFORMS_EXPORT
RDKIT_CHEMTRANSFORMS_EXPORT void updateSubMolConfs(const ROMol &mol, RWMol &res, boost::dynamic_bitset<> &removedAtoms)
not recommended for use in other code
RDKIT_CHEMTRANSFORMS_EXPORT void copyStereoGroups(const std::map< const Atom *, Atom * > &molAtomMap, const ROMol &mol, RWMol &newMol)
RDKIT_CHEMTRANSFORMS_EXPORT 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....
RDKIT_CHEMTRANSFORMS_EXPORT ROMol * combineMols(const ROMol &mol1, const ROMol &mol2, RDGeom::Point3D offset=RDGeom::Point3D(0, 0, 0))
Combined two molecules to create a new one.
RDKIT_CHEMTRANSFORMS_EXPORT 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 ...
std::vector< std::pair< int, int > > MatchVectType
used to return matches from substructure searching, The format is (queryAtomIdx, molAtomIdx)
RDKIT_CHEMTRANSFORMS_EXPORT void parseQueryDefText(const std::string &queryDefText, std::map< std::string, ROMOL_SPTR > &queryDefs, bool standardize=true, const std::string &delimiter="\t", const std::string &comment="//", unsigned int nameColumn=0, unsigned int smartsColumn=1)
equivalent to parseQueryDefFile() but the query definitions are explicitly passed in
RDKIT_CHEMTRANSFORMS_EXPORT 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.
RDKIT_CHEMTRANSFORMS_EXPORT ROMol * MurckoDecompose(const ROMol &mol)
Carries out a Murcko decomposition on the molecule provided.
RDKIT_CHEMTRANSFORMS_EXPORT 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=nullptr)
Adds named recursive queries to a molecule's atoms based on atom labels.
RDKIT_CHEMTRANSFORMS_EXPORT void parseQueryDefFile(const std::string &filename, std::map< std::string, ROMOL_SPTR > &queryDefs, bool standardize=true, const std::string &delimiter="\t", 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...
boost::shared_ptr< ROMol > ROMOL_SPTR
RDKIT_CHEMTRANSFORMS_EXPORT 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...