22#ifndef RD_STRUCTCHECKER_H_Oct2016
23#define RD_STRUCTCHECKER_H_Oct2016
30namespace StructureCheck {
167 const std::vector<std::pair<AugmentedAtom, AugmentedAtom>> &aaPairs);
177 const std::vector<std::string> &smarts);
181 const std::string &path);
183 const std::vector<std::string> &smarts);
187 const std::string &path);
189 const std::vector<std::string> &smarts);
194 const std::vector<std::string> &smartsTo);
196 const std::vector<ROMOL_SPTR> &to);
205 const std::string &augmentedAtomTranslationsFile =
"",
208 const std::string &patternFile =
"",
209 const std::string &rotatePatternFile =
"",
210 const std::string &stereoPatternFile =
"",
211 const std::string &tautomerFile =
"");
281 : Options(options) {}
pulls in the core RDKit functionality
RWMol is a molecule class that is intended to be edited.
StructChecker(const StructCheckerOptions &options)
static std::string StructureFlagsToString(unsigned flags)
static unsigned StringToStructureFlags(const std::string &str)
void SetOptions(const StructCheckerOptions &options)
@ ALIAS_CONVERSION_FAILED
const StructCheckerOptions & GetOptions() const
unsigned checkMolStructure(RWMol &mol) const
#define RDKIT_STRUCTCHECKER_EXPORT
static const char * symbol[119]
RDKIT_STRUCTCHECKER_EXPORT bool loadOptionsFromFiles(StructCheckerOptions &op, const std::string &augmentedAtomTranslationsFile="", const std::string &patternFile="", const std::string &rotatePatternFile="", const std::string &stereoPatternFile="", const std::string &tautomerFile="")
RDKIT_STRUCTCHECKER_EXPORT bool parseOptionsJSON(const std::string &json, StructCheckerOptions &op)
static const int ANY_CHARGE
std::vector< Ligand > Ligands
AugmentedAtom(const std::string &symbol, const std::string &name, int charge, RadicalType radical, AATopology topology)
unsigned SubstitutionCount
std::vector< AugmentedAtom > GoodAtoms
void setRotatePatterns(const std::vector< ROMOL_SPTR > &p)
bool loadAcidicAugmentedAtoms(const std::string &path)
bool loadRotatePatterns(const std::string &path)
std::vector< PathEntry > BetaPathTable
bool loadChargeDataTables(const std::string &path)
bool loadGoodAugmentedAtoms(const std::string &path)
std::map< unsigned, double > ElnegTable
void setGoodAugmentedAtoms(const std::vector< AugmentedAtom > &acidicAtoms)
bool RemoveMinorFragments
bool loadAugmentedAtomTranslations(const std::string &path)
std::vector< IncEntry > ChargeIncTable
std::vector< ROMOL_SPTR > StereoPatterns
void setAugmentedAtomTranslations(const std::vector< std::pair< AugmentedAtom, AugmentedAtom > > &aaPairs)
void parseStereoPatterns(const std::vector< std::string > &smarts)
std::vector< AugmentedAtom > AcidicAtoms
void parseTautomerData(const std::vector< std::string > &smartsFrom, const std::vector< std::string > &smartsTo)
void parsePatterns(const std::vector< std::string > &smarts)
std::vector< ROMOL_SPTR > RotatePatterns
std::vector< ROMOL_SPTR > Patterns
std::vector< IncEntry > AtomAcidity
std::vector< PathEntry > AlphaPathTable
bool loadStereoPatterns(const std::string &path)
std::vector< ROMOL_SPTR > ToTautomer
int CollisionLimitPercent
void setPatterns(const std::vector< ROMOL_SPTR > &p)
void setStereoPatterns(const std::vector< ROMOL_SPTR > &p)
void setTautomerData(const std::vector< ROMOL_SPTR > &from, const std::vector< ROMOL_SPTR > &to)
std::vector< ROMOL_SPTR > FromTautomer
void setAcidicAugmentedAtoms(const std::vector< AugmentedAtom > &acidicAtoms)
void parseRotatePatterns(const std::vector< std::string > &smarts)
std::vector< std::pair< AugmentedAtom, AugmentedAtom > > AugmentedAtomPairs
bool loadPatterns(const std::string &path)
bool loadTautomerData(const std::string &path)