15 #include "../RDKitBase.h" 29 : MatchValences(false),
30 MatchChiralTag(false),
31 MatchFormalCharge(false),
32 RingMatchesRingOnly(false) {}
42 : RingMatchesRingOnly(false),
43 CompleteRingsOnly(false),
48 const short unsigned c1[],
const short unsigned c2[],
const ROMol& mol1,
52 const ROMol& mol1,
unsigned int atom1,
53 const ROMol& mol2,
unsigned int atom2,
56 const ROMol& mol1,
unsigned int bond1,
57 const ROMol& mol2,
unsigned int bond2,
62 const ROMol& mol1,
unsigned int atom1,
63 const ROMol& mol2,
unsigned int atom2,
68 const ROMol& mol2,
unsigned int atom2,
void* userData);
71 const ROMol& mol2,
unsigned int atom2,
void* userData);
74 const ROMol& mol1,
unsigned int bond1,
75 const ROMol& mol2,
unsigned int bond2,
79 const ROMol& mol2,
unsigned int bond2,
83 const ROMol& mol2,
unsigned int bond2,
void* userData);
118 : MaximizeBonds(true),
125 CompareFunctionsUserData(0),
127 ProgressCallbackUserData(0),
128 FinalMatchChecker(0),
139 MCSResult() : NumAtoms(0), NumBonds(0), Canceled(false) {}
149 const char* params_json);
162 findMCS(
const std::vector<ROMOL_SPTR>& mols,
bool maximizeBonds,
163 double threshold = 1.0,
unsigned timeout = 3600,
bool verbose =
false,
164 bool matchValences =
false,
bool ringMatchesRingOnly =
false,
165 bool completeRingsOnly =
false,
bool matchChiralTag =
false,
MCSFinalMatchCheckFunction FinalMatchChecker
RDKIT_FMCS_EXPORT bool MCSBondCompareAny(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *userData)
RDKIT_FMCS_EXPORT MCSResult findMCS(const std::vector< ROMOL_SPTR > &mols, const MCSParameters *params=0)
RDKIT_FMCS_EXPORT bool MCSAtomCompareIsotopes(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2, void *userData)
RDKIT_FMCS_EXPORT bool MCSBondCompareOrderExact(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *userData)
RDKIT_FMCS_EXPORT bool MCSAtomCompareAny(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2, void *userData)
bool(* MCSAtomCompareFunction)(const MCSAtomCompareParameters &p, const ROMol &mol1, unsigned int atom1, const ROMol &mol2, unsigned int atom2, void *userData)
RDKIT_FMCS_EXPORT bool MCSProgressCallbackTimeout(const MCSProgressData &stat, const MCSParameters ¶ms, void *userData)
MCSBondCompareParameters()
MCSAtomCompareFunction AtomTyper
#define RDKIT_FMCS_EXPORT
void * CompareFunctionsUserData
MCSProgressCallback ProgressCallback
void * ProgressCallbackUserData
MCSBondCompareFunction BondTyper
bool(* MCSFinalMatchCheckFunction)(const short unsigned c1[], const short unsigned c2[], const ROMol &mol1, const FMCS::Graph &query, const ROMol &mol2, const FMCS::Graph &target, const MCSParameters *p)
bool(* MCSProgressCallback)(const MCSProgressData &stat, const MCSParameters ¶ms, void *userData)
MCSAtomCompareParameters()
RDKIT_FMCS_EXPORT void parseMCSParametersJSON(const char *json, MCSParameters *params)
MCSBondCompareParameters BondCompareParameters
RDKIT_FMCS_EXPORT bool MCSAtomCompareElements(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)
RDKIT_FMCS_EXPORT bool MCSBondCompareOrder(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *userData)
bool(* MCSBondCompareFunction)(const MCSBondCompareParameters &p, const ROMol &mol1, unsigned int bond1, const ROMol &mol2, unsigned int bond2, void *userData)
MCSAtomCompareParameters AtomCompareParameters