rdkit.Chem.FilterCatalog.FilterMatcher

Package rdkit :: Package Chem :: Module FilterCatalog :: Class FilterMatcher |
[hide private]
[frames] | no frames]

# Class FilterMatcher

source code

                       object --+
                                |
                      ??.instance --+
                                    |
    rdfiltercatalog.FilterMatcherBase --+
                                        |
      rdfiltercatalog.PythonFilterMatcher --+
                                            |
                                           FilterMatcher

    FilterMatcher - This class allows creation of Python based
    filters.  Subclass this class to create a Filter useable
    in a FilterCatalogEntry

    Simple Example:

    from rdkit.Chem import rdMolDescriptors
    class MWFilter(FilterMatcher):
      def __init__(self, minMw, maxMw):
          FilterMatcher.__init__(self, "MW violation")
          self.minMw = minMw
          self.maxMw = maxMw

      def IsValid(self):
         return True

      def HasMatch(self, mol):
         mw = rdMolDescriptors.CalcExactMolWt(mol)
         return not self.minMw <= mw <= self.maxMw

Instance Methods | [hide private]
__init__(self, name=`'``Unamed FilterMatcher``'`) __init__( (object)arg1, (object)arg2) -> None : | source code
HasMatch(self, mol) Return True if the filter matches the molecule | source code
    returns True if the filter matches
GetMatches(mol, matchVect) (By default, this calls HasMatch and does not modify matchVect) | source code
IsValid(self, mol) Must override this function | source code
GetName(self) GetName( (FilterMatcherBase)arg1) -> str : | source code
Inherited from `rdfiltercatalog.FilterMatcherBase`: `__reduce__`, `__str__` Inherited from `unreachable.instance`: `__new__` Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__sizeof__`, `__subclasshook__`

Class Variables | [hide private]
Inherited from `rdfiltercatalog.PythonFilterMatcher`: `__instance_size__`

Properties | [hide private]
Inherited from `object`: `__class__`

Method Details | [hide private]

### __init__(self, name=`'``Unamed FilterMatcher``'`) (Constructor) | source code
    __init__( (object)arg1, (object)arg2) -> None :

        C++ signature :
            void __init__(_object*,_object*)
Overrides: object.__init__ (inherited documentation)

### HasMatch(self, mol) | source code
    Return True if the filter matches the molecule
Overrides: rdfiltercatalog.FilterMatcherBase.HasMatch

### GetMatches(mol, matchVect) | source code
    (By default, this calls HasMatch and does not modify matchVect)

    matchVect is a vector of FilterMatch's which hold the matching
    filter and the matched query_atom, mol_atom pairs if applicable.
    To append to this vector:
    v = MatchTypeVect()
    v.append(IntPair( query_atom_idx, mol_atom_idx ) )
    match = FilterMatch(self, v)
    matchVect.append( match )
Returns:
    returns True if the filter matches
Overrides: rdfiltercatalog.FilterMatcherBase.GetMatches

### IsValid(self, mol) | source code
    Must override this function
Overrides: rdfiltercatalog.FilterMatcherBase.IsValid

### GetName(self) | source code
    GetName( (FilterMatcherBase)arg1) -> str :

        C++ signature :
            std::string GetName(RDKit::FilterMatcherBase {lvalue})
Overrides: rdfiltercatalog.FilterMatcherBase.GetName (inherited documentation)