class OEMCSMaxBonds : public OEMCSFunc

This class represents OEMCSMaxBonds.

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

The following methods are publicly inherited from OEMCSFunc:




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\ bonds + \frac{num.\ of\ mapped\ atoms}{100}\)


OEMCSFunc *CreateCopy() const

Deep copy constructor that returns a copy of the object. The memory for the returned OEMCSMaxBonds 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.