class OEMCSMaxAtoms : public OEMCSFunc

This class represents OEMCSMaxAtoms.

The OEMCSMaxAtoms class is an implementation of OEMCSFunc designed to order maximum common substructure matches by the maximum number of atoms included in the graph match. If two common structure matches having the same number of atoms, ties are split based on the number of bonds contained in the match.

The following methods are publicly inherited from OEMCSFunc:

operator() CreateCopy  


double operator()(const OEMolBase &, const OEMolBase &, OEAtomBase **,
                  OEBondBase **)

This method is called by its parent OEMCSSearch or OECliqueSearch object. The method is called with the pattern molecule, target molecule, and arrays and atoms and bonds containing the correspondences found for the a common structure match. The method computes a value based on the number of atoms and bonds in the common structure match which is used to determine the maximum common structure match.

Scoring function:

\(num.\ of\ mapped\ atoms + \frac{num.\ of\ mapped\ bonds}{100}\)


OEMCSFunc *CreateCopy() const

Deep copy constructor that returns a copy of the object. The memory for the returned OEMCSMaxAtoms object is dynamically allocated and owned by the caller.

The returned copy should be deallocated using C++ delete operator in order to prevent a memory leak.