# OESplitMolComplexOptions¶

class OESplitMolComplexOptions


The OESplitMolComplexOptions class encapsulates properties and resources that determine how OESplitMolComplex and OEGetMolComplexComponents operate.

## Constructors¶

OESplitMolComplexOptions(const OESplitMolComplexOptions &rhs)
OESplitMolComplexOptions(const std::string &ligName=std::string())


Constructor and copy constructor. If ligName is specified in the call to the constructor, components will be recognized as ligands if and only if they have a matching residue name string.

## operator=¶

OESplitMolComplexOptions &operator=(const OESplitMolComplexOptions &rhs)


Assignment operator.

## operator!=¶

bool operator!=(const OESplitMolComplexOptions &rhs) const


Not equals operator. Returns true if options are not equivalent.

## operator==¶

bool operator==(const OESplitMolComplexOptions &rhs) const


Equals operator. Returns true if options are equivalent.

bool GetAddRGroup() const


Returns true if “R groups” are to be added when covalent bonds are broken.

bool GetAdjustHCount() const


Returns true if the implicit hydrogen count is to be adjusted when covalent bonds are broken.

## GetAssumptions¶

unsigned GetAssumptions() const


## GetCategorizer¶

OEMolComplexCategorizerBase *GetCategorizer() const


Return a new copy of the OEMolComplexCategorizerBase object used to categorize molecular components.

## GetCollectProteinByChain¶

bool GetCollectProteinByChain() const


Returns true if fragmented protein chains be associated with the same the same site.

## GetCombinedFilter¶

OESystem::OEUnaryPredicate<OESystem::OERoleSet> *GetCombinedFilter() const


Returns a new copy of the filter that matches the ligand or protein or water filters.

## GetLigandFilter¶

OESystem::OEUnaryPredicate<OESystem::OERoleSet> *GetLigandFilter() const


Returns a new copy of the ligand filter.

## GetMaxBindingSiteDist¶

double GetMaxBindingSiteDist() const


Return the maximum distance from the ligand to be associated with a binding site. Can not be less than 1.0 Å.

## GetMaxSurfaceWaterDist¶

double GetMaxSurfaceWaterDist() const


Return the maximum distance from the protein to be considered a surface water. Can not be less than 1.0 Å.

## GetOtherFilter¶

OESystem::OEUnaryPredicate<OESystem::OERoleSet> *GetOtherFilter() const


Returns a new copy of the filter that matches everything that does not match the combined filter.

## GetPromoteUnknowns¶

bool GetPromoteUnknowns() const


Returns true if components classified as OEMolComplexFilterCategory.Unknown should be considered the ligand if no others ligand is found.

## GetProteinFilter¶

OESystem::OEUnaryPredicate<OESystem::OERoleSet> *GetProteinFilter() const


Returns a new copy of the protein filter.

## GetSeparateResidues¶

bool GetSeparateResidues() const


Returns true if proteins are to be separated into individual residues before selection. Separating into residues can be used to extract binding site residues.

## GetSplitCovalent¶

bool GetSplitCovalent() const


Returns true if covalent ligands are to be searched for and split out as separate components.

## GetSplitCovalentCofactors¶

bool GetSplitCovalentCofactors() const


Returns true if covalent cofactors are to be searched for and split out as separate components.

## GetWarnNoLigand¶

bool GetWarnNoLigand() const


Returns true if a verbose level warning will be generated when a ligand is not found.

## GetWaterFilter¶

OESystem::OEUnaryPredicate<OESystem::OERoleSet> *GetWaterFilter() const


Returns a new copy of the water filter.

## ResetFilters¶

void ResetFilters(unsigned site=1u,
bool surfaceWaters=false,
unsigned ligCategory=OEMolComplexFilterCategory::Ligand,
unsigned protCategory=OEMolComplexFilterCategory::ProtComplex,
unsigned waterCategory=OEMolComplexFilterCategory::Water,
unsigned modelNo=1u)


Regenerate filters based on parameters. Can be overridden by methods to set individual filters. Site 0 means all sites. ModelNo 0 means all models.

Note

It may be necessary to remove the input flavor OEIFlavor.PDB.ENDM to read all models (see the splitmolcomplex example for how to do this). In most situations, the modelNo parameter should be set to either 0 or 1 (the default). The reason for this is that the site counter, which the site parameter selects based on, does not reset for each model and therefore site and model are not independent. A good example of where this can be used is with a PDB biological assembly file: setting the modelNo parameter to 0 (use all models), allows a binding site spanning symmetry related proteins marked as different models to be recognized.

void SetAddRGroup(bool addR=true)


Set whether “R groups” are to be added when covalent bonds are broken.

void SetAdjustHCount(bool adjust=true)


Set whether the implicit hydrogen count is to be adjusted when covalent bonds are broken.

## SetAssumptions¶

void SetAssumptions(unsigned assume)


Set assumptions about molecular perception. Default = OEAssumption.ResPerceived

## SetCategorizer¶

void SetCategorizer(const OEMolComplexCategorizerBase &cat)


Set the OEMolComplexCategorizerBase object used to categorize molecular components.

## SetCollectProteinByChain¶

void SetCollectProteinByChain(bool collect=true)


Set whether fragmented protein chains should be collected into the same site. Default = true

## SetLigandFilter¶

void SetLigandFilter(const OESystem::OEUnaryPredicate<OESystem::OERoleSet> &f)


Set the ligand filter. Default = OEMolComplexFilterCategory.Ligand

## SetMaxBindingSiteDist¶

void SetMaxBindingSiteDist(double dist)


Set the maximum distance from the ligand to be associated with a binding site. Default = 8.0 Å

## SetMaxSurfaceWaterDist¶

void SetMaxSurfaceWaterDist(double dist)


Set the maximum distance from the protein to be considered a surface water. Default = 5.0 Å

## SetPromoteUnknowns¶

void SetPromoteUnknowns(bool promote=true)


Set whether components classified as OEMolComplexFilterCategory.Unknown should be considered the ligand if no others ligand is found. Default = true

## SetProteinFilter¶

void
SetProteinFilter(const OESystem::OEUnaryPredicate<OESystem::OERoleSet> &f)


Set the protein filter. Default = OEMolComplexFilterCategory.ProtComplex

## SetSeparateResidues¶

void SetSeparateResidues(bool separate=true)


Set whether to separate proteins into individual residues before selection. Can be used to identify binding site residues. Default = false

## SetSplitCovalent¶

void SetSplitCovalent(bool split=true)


Set whether covalent ligands are to be searched for and split out as separate components. Default = false

## SetSplitCovalentCofactors¶

void SetSplitCovalentCofactors(bool split=true)


Set whether covalent cofactors are to be searched for and split out as separate components. Default = false

## SetWarnNoLigand¶

void SetWarnNoLigand(bool warn=true)


Set whether to send out a verbose level warning if a ligand is not found. Default = true

## SetWaterFilter¶

void SetWaterFilter(const OESystem::OEUnaryPredicate<OESystem::OERoleSet> &f)


Set the water filter. Default = OEMolComplexFilterCategory.Water