OEIsWater¶
class OEIsWater : public OESystem::OEUnaryPredicate<OEChem::OEAtomBase>
This class represents OEIsWater functor that determines if an atom (OEAtomBase) is in a water molecule.
See also
- Residue Data Functors section
The following methods are publicly inherited from OEUnaryPredicate:
operator() | CreateCopy | CreatePredicateCopy |
The following methods are publicly inherited from OEUnaryFunction:
operator() | CreateCopy |
Constructors¶
OEIsWater(bool checkHydrogens=false, bool allowIons=false)
Constructs the functor to determine if an atom is part of a water molecule. If the optional argument checkHydrogens is set to true, the function checks whether hydrogen atoms are part of a water molecule and returns true. The default behavior only returns true for water oxygen atoms, which is useful for counting water molecules in a system. If optional argument allowIons is set to true, the function allows checking for the water ions \(OH^{-}\) and \(H_{3}O^{+}\).
operator()¶
bool operator()(const OEChem::OEAtomBase &atom) const
Returns true, if the atom
- read from a pdb file with the following pdb residue names: HOH, H2O, DOD, D2O, WAT, TIP, SOL, OH2, OD2.
- is an oxygen and has no heavy atom neighbor
otherwise it returns false.