 |
RDKit
Open-source cheminformatics and machine learning.
|
Go to the documentation of this file.
15 #include "../RDKitBase.h"
41 bool MatchValences =
false;
42 bool MatchChiralTag =
false;
43 bool MatchFormalCharge =
false;
44 bool RingMatchesRingOnly =
false;
45 bool MatchIsotope =
false;
49 bool RingMatchesRingOnly =
false;
50 bool CompleteRingsOnly =
false;
51 bool MatchFusedRings =
false;
52 bool MatchFusedRingsStrict =
false;
53 bool MatchStereo =
false;
57 const std::uint32_t c1[],
const std::uint32_t c2[],
const ROMol& mol1,
61 const ROMol& mol1,
unsigned int atom1,
62 const ROMol& mol2,
unsigned int atom2,
65 const ROMol& mol1,
unsigned int bond1,
66 const ROMol& mol2,
unsigned int bond2,
71 const ROMol& mol1,
unsigned int atom1,
72 const ROMol& mol2,
unsigned int atom2);
74 const ROMol& mol1,
unsigned int atom1,
75 const ROMol& mol2,
unsigned int atom2);
77 const ROMol& mol1,
unsigned int atom1,
78 const ROMol& mol2,
unsigned int atom2);
81 const ROMol& mol1,
unsigned int atom1,
82 const ROMol& mol2,
unsigned int atom2,
86 const ROMol& mol2,
unsigned int atom2,
void* userData);
90 const ROMol& mol2,
unsigned int atom2,
void* userData);
93 const ROMol& mol2,
unsigned int atom2,
void* userData);
96 const ROMol& mol1,
unsigned int bond1,
97 const ROMol& mol2,
unsigned int bond2);
99 const ROMol& mol1,
unsigned int bond1,
100 const ROMol& mol2,
unsigned int bond2,
101 void* v_ringMatchMatrixSet);
104 const ROMol& mol1,
unsigned int bond1,
105 const ROMol& mol2,
unsigned int bond2,
109 const ROMol& mol2,
unsigned int bond2,
113 const ROMol& mol2,
unsigned int bond2,
void* userData);
132 bool MaximizeBonds =
true;
133 double Threshold = 1.0;
134 unsigned Timeout = -1;
135 bool Verbose =
false;
140 void* CompareFunctionsUserData =
nullptr;
143 void* ProgressCallbackUserData =
nullptr;
146 std::string InitialSeed =
"";
162 MCSResult() : NumAtoms(0), NumBonds(0), Canceled(false) {}
172 const char* params_json);
175 const std::vector<ROMOL_SPTR>& mols,
bool maximizeBonds,
double threshold,
176 unsigned timeout,
bool verbose,
bool matchValences,
177 bool ringMatchesRingOnly,
bool completeRingsOnly,
bool matchChiralTag,
180 findMCS(
const std::vector<ROMOL_SPTR>& mols,
bool maximizeBonds,
181 double threshold = 1.0,
unsigned timeout = 3600,
bool verbose =
false,
182 bool matchValences =
false,
bool ringMatchesRingOnly =
false,
183 bool completeRingsOnly =
false,
bool matchChiralTag =
false,
RDKIT_FMCS_EXPORT bool MCSBondCompareOrder(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *userData)
MCSAtomCompareParameters AtomCompareParameters
RDKIT_FMCS_EXPORT bool MCSProgressCallbackTimeout(const MCSProgressData &stat, const MCSParameters ¶ms, void *userData)
void setMCSAtomTyperFromConstChar(const char *atomComp)
RDKIT_FMCS_EXPORT void parseMCSParametersJSON(const char *json, MCSParameters *params)
bool(* MCSAtomCompareFunction)(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2, void *userData)
RDKIT_FMCS_EXPORT bool MCSAtomCompareIsotopes(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2, void *userData)
void setMCSAtomTyperFromEnum(AtomComparator atomComp)
RDKIT_FMCS_EXPORT bool checkBondStereo(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2)
RDKIT_FMCS_EXPORT bool MCSAtomCompareAnyHeavyAtom(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2, void *userData)
RDKIT_FMCS_EXPORT bool checkAtomRingMatch(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2)
bool(* MCSBondCompareFunction)(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *userData)
RDKIT_FMCS_EXPORT bool checkBondRingMatch(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *v_ringMatchMatrixSet)
MCSBondCompareParameters BondCompareParameters
RDKIT_FMCS_EXPORT bool checkAtomCharge(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2)
RDKIT_FMCS_EXPORT bool MCSBondCompareAny(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *userData)
bool(* MCSProgressCallback)(const MCSProgressData &stat, const MCSParameters ¶ms, void *userData)
void setMCSBondTyperFromConstChar(const char *bondComp)
RDKIT_FMCS_EXPORT bool MCSAtomCompareElements(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2, void *userData)
void setMCSBondTyperFromEnum(BondComparator bondComp)
#define RDKIT_FMCS_EXPORT
RDKIT_FMCS_EXPORT bool MCSAtomCompareAny(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2, void *userData)
RDKIT_FMCS_EXPORT MCSResult findMCS_P(const std::vector< ROMOL_SPTR > &mols, const char *params_json)
@ AtomCompareAnyHeavyAtom
RDKIT_FMCS_EXPORT bool MCSBondCompareOrderExact(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *userData)
bool(* MCSFinalMatchCheckFunction)(const std::uint32_t c1[], const std::uint32_t c2[], const ROMol &mol1, const FMCS::Graph &query, const ROMol &mol2, const FMCS::Graph &target, const MCSParameters *p)
boost::shared_ptr< ROMol > ROMOL_SPTR
RDKIT_FMCS_EXPORT bool checkAtomChirality(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2)
RDKIT_FMCS_EXPORT MCSResult findMCS(const std::vector< ROMOL_SPTR > &mols, const MCSParameters *params=0)