OESystem::OEIterBase<OEChem::OEMolBase> * OEGetMolComplexComponents(const OEChem::OEMolBase &mol, const OESplitMolComplexOptions &opt=OESplitMolComplexOptions()) OESystem::OEIterBase<OEChem::OEMolBase> * OEGetMolComplexComponents(const OEChem::OEMolBase &mol, const OESplitMolComplexOptions &opt, const OESystem::OEUnaryPredicate<OESystem::OERoleSet> &filter)
Returns an iterator of connected components within
the specified OEMolBase.
The optional OESplitMolComplexOptions object
controls this process. If an explicit
filter is not provided,
the filter returned by the OESplitMolComplexOptions method
will be used.
Any molecules returned in the iterator have been given titles.
Protein chains are given a shortened version of the input title
combined with the chain ID. Small molecule titles are
residue names. Molecules with more than one residue are combined
-. A two residue molecule might have the title
Output molecules also have one or more SD Tags to describe the functional roles.
The input molecule should contain PDB
such as residue name, which is used during the
classification process, either from a PDB format file or
Molecular complexes read from files in formats that lack this
information (for example SDF) may be split inappropriately unless
residues are perceived after input.