OEDesignUnit

Attention

This API is currently available in C++ and Python.

class OEDesignUnit : public OESystem::OEBase

This is a container class derived from OEBase that holds all molecules needed to construct a model-ready biomolecular system.

Constructors

OEDesignUnit()

Default constructor.

OEDesignUnit(const OEDesignUnit &rhs)

Copy constructor.

Molecule constructors

Note

Molecule constructors are intended for already prepared molecules. They requires a target structure, as well as either a ligand or a list of binding site residues. Solvent and co-factors are optional, and are only set if the molecules passed are valid. The target molecule is not split into components and no structure preparation take place. A title will be generated based on the names of the provided molecules, but can be set manually afterwards.

OEDesignUnit(const OEChem::OEMolBase& target, const OEChem::OEMolBase& ligand, const OEChem::OEMolBase& solvent=OEChem::OEGraphMol(), const OEChem::OEMolBase& cofactors=OEChem::OEGraphMol(), const unsigned targetID=OEDesignUnitComponents::Protein)

Target-ligand constructor

OEDesignUnit(const OEChem::OEMolBase& target, const std::vector<std::string>& siteResidues, const OEChem::OEMolBase& solvent=OEChem::OEGraphMol(), const OEChem::OEMolBase& cofactors=OEChem::OEGraphMol(), const unsigned targetID=OEDesignUnitComponents::Protein);

Apo target constructor

operator=

OEDesignUnit &operator=(const OEDesignUnit &rhs)

Assignment operator

operator bool

operator bool() const

Returns whether the OEDesignUnit object is valid.

Clear

void Clear()

Resets the OEDesignUnit object to its initial state. This method deletes all internally stored molecules, and clears any OEBase data from the object.

CreateCopy

OEBio::OEDesignUnit *CreateCopy() const

Deep copy constructor that returns a copy of the object. The memory for the returned OEDesignUnit object is dynamically allocated and owned by the caller.

GetComponent

const OEChem::OEMolBase &GetComponent(unsigned componentID) const

Returns a const reference to the molecule on the OEDesignUnit that is associated with the input componentID. Note that this function only works for single molecule components (e.g. protein, ligand, etc). This function requires an empty OEChem::OEMolBase or it will clear the incoming molecule.

bool GetComponent(OEMolBase& mol, unsigned componentID) const

Returns success based on a valid copy of the molecule in the OEDesignUnit object that is associated with the input componentID.

GetComponentID

unsigned GetComponentID(const std::string &componentTag) const

Returns the internal unsigned integer representation of the componentTag string from the OEDesignUnit object.

GetComponentTag

std::string GetComponentTag(unsigned componentID) const

Returns the string tag representation of the componentID unsigned integer from the OEDesignUnit object.

GetComponents

bool GetComponents(OEChem::OEMolBase &mol, unsigned componentMask,
                   bool bondCovalent=true,
                   const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& pred=OEChem::OEIsTrueAtom())) const

The function creates a single output mol from the components given in the componentMask bit mask. The bit mask can be constructed using unsigned integers stored in the OEDesignUnitComponents namespace. The function returns a boolean value to alert if the operation was successful. Note that this function only works for a list of components (e.g. other_ligands, excipients, etc). The optional predicate can be used to subset some of the components in the specified bit mask. The predicate does not have to be complete, e.g. two water molecules can be specified to subset the solvent category, but that will not subset the protein component also included in that mask. In essence the predicate is checked to see if it matches part of a design unit component and only in this case does it take effect.

GetComponentsWithin

bool GetComponentsWithin(OEChem::OEMolBase &mol,
                        unsigned componentMask=OEDesignUnitComponents::Solvent,
                        unsigned withinMask=OEDesignUnitComponents::Protein,
                        double dist=5.0, bool includeself,
                        bool bondCovalent=true) const

The function creates a single output mol from the components given in the componentMask bit mask that fall within a dist distance of components given in the withinMask bit mask. All bit masks can be constructed using unsigned integers stored in the OEDesignUnitComponents namespace. If the boolean bondCovalent flag is set, all components that should be covalently bonded will have bonded added in the output mol. The function returns a boolean value to alert if the operation was successful.

GetDataType

const void *GetDataType() const

This pure virtual function is used to perform run-time type identification. The value returned by the method should be equivalent to the value returned by OEGetDataType using the OEDesignUnit derived class type as the template argument.

GetIDs

const std::vector<unsigned> GetIDs() const

Returns a vector of the component IDs stored on the OEDesignUnit object.

GetLigand

const OEChem::OEMolBase &GetLigand() const

Returns a const reference to the ligand molecule on the OEDesignUnit object.

GetMetal

const OEChem::OEMolBase &GetMetal() const

Returns a const reference to the metal on the OEDesignUnit object.

GetNucleicAcid

const OEChem::OEMolBase &GetNucleicAcid() const

Returns a const reference to the nucleic acid molecule on the OEDesignUnit object.

bool GetNucleicAcid(OEMolBase& mol) const

Returns success based on a valid copy of the nucleic acid molecule in the OEDesignUnit object.

GetPDBMetaData

bool OEDesignUnit::GetPDBMetaData(OEChem::OEMolBase& mol) const

Returns success based on a valid copy of the PDB metadata in the OEDesignUnit object.

GetPackingResidues

const OEChem::OEMolBase &GetPackingResidues() const

Returns a const reference to the packing residue molecule on the OEDesignUnit object.

bool GetPackingResidues(OEMolBase& mol) const

Returns success based on a valid copy of the packing residue molecule in the OEDesignUnit object.

GetProtein

const OEChem::OEMolBase &GetProtein() const

Returns a const reference to the protein molecule on the OEDesignUnit object. Note that this function requires an empty OEChem::OEMolBase or it will clear the incoming molecule.

bool GetProtein(OEMolBase& mol) const

Returns success based on a valid copy of the protein molecule in the OEDesignUnit object.

GetReceptor

const OEBio::OEReceptor &GetReceptor() const
OEBio::OEReceptor &GetReceptor()

Returns a reference to the receptor on the OEDesignUnit object.

bool OEDesignUnit::GetReceptor(OEBio::OEReceptor& receptor) const

Returns success based on a valid copy of the receptor in the OEDesignUnit object.

GetSiteResidues

const std::vector<std::string> GetSiteResidues() const

Returns a vector of the site residue strings stored on the OEDesignUnit object. This function calls the oe:function:: OEResidueToString function with “:” delimiter.

GetSolvent

const OEChem::OEMolBase &GetSolvent() const

Returns a const reference to the solvent molecule on the OEDesignUnit object.

bool GetSolvent(OEMolBase& mol) const

Returns success based on a valid copy of the solvent molecule in the OEDesignUnit object.

GetStructureQuality

const OEBio::OEStructureQuality &GetStructureQuality() const

Returns the OEStructureQuality class stored on the OEDesignUnit object.

See also

GetTransform

const OEChem::OETrans &GetTransform() const

Returns the OETrans class stored on the OEDesignUnit object.

bool GetTransform(OEChem::OETrans& trans) const

Returns success based on a valid copy of the input OETrans object in the OEDesignUnit object.

See also

GetTaggedComponents

OESystem::OEIterBase<std::pair<std::string, const OEChem::OEMolBase &> > *
GetTaggedComponents(unsigned componentMask) const

Returns an OEIter of all molecules and corresponding molecular tags stored on the OEDesignUnit object. A bit mask of desired components can be constructed from constants in the OEDesignUnitComponents namespace and be passed in via the componentMask argument.

GetTags

const std::vector<std::string> GetTags() const

Returns a vector of the tags of the molecules stored on the OEDesignUnit object.

GetTarget

const OEChem::OEMolBase &GetTarget() const

Returns a const reference to target molecule on the OEDesignUnit object.

bool GetTarget(OEMolBase& mol) const

Returns success based on a valid copy of the target molecule in the OEDesignUnit object.

GetTargetComponentID

unsigned GetTargetComponentID() const

Returns the component ID from the OEDesignUnitComponents namespace of the target molecule on the OEDesignUnit object.

GetTargetComponentTag

std::string GetTargetComponentTag() const

Returns the string tag of the title of the OEDesignUnit object.

GetTitle

std::string GetTitle() const

Returns the title of the OEDesignUnit object.

HasAltLoc

bool HasAltLoc() const

Checks that the alternate locations flag on the OEDesignUnit object has been set.

HasComponent

bool HasComponent(unsigned componentID) const

Checks that a molecule given by the componentID from the OEDesignUnitComponents namespace has been set on the OEDesignUnit object.

HasLigand

bool HasLigand() const

Checks that the ligand molecule of the OEDesignUnit object has been set.

HasMetal

bool HasMetal() const

Checks that the metal molecule of the OEDesignUnit object has been set.

HasNucleicAcid

bool HasNucleicAcid() const

Checks that the nucleic acid molecule of the OEDesignUnit object has been set.

HasPDBMetaData

bool HasPDBMetaData() const

Checks that the PDB metadata of the OEDesignUnit object has been set.

HasPackingResidues

bool HasPackingResidues() const

Checks that the packing residue molecule of the OEDesignUnit object has been set.

HasProtein

bool HasProtein() const

Checks that the protein molecule of the OEDesignUnit object has been set.

HasReceptor

bool HasReceptor() const

Checks that the OEDesignUnit object contains a valid receptor.

HasSiteResidues

bool HasSiteResidues() const

Checks that the site residues of the OEDesignUnit object has been set.

HasSolvent

bool HasSolvent() const

Checks that the solvent molecule of the OEDesignUnit object has been set.

HasStructureQuality

bool HasStructureQuality() const

Checks that the internal OEStructureQuality object stored on the OEDesignUnit has been set.

HasTransform

bool HasTransform() const

Checks that the internal OETrans object stored on the OEDesignUnit has been set.

HasTarget

bool HasTarget() const

Checks that the target molecule of the OEDesignUnit object has been set.

HasTitle

bool HasTitle() const

Checks that a title of the OEDesignUnit object has been set.

IsDataType

bool IsDataType(const void *) const

Returns whether the type is the same as the instance this method is called on.

SetTitle

bool SetTitle(const std::string &title)

Sets the title of the OEDesignUnit object.

ClearReceptor

bool ClearReceptor()

Clears the stored OEReceptor object.

ClearComponent

bool ClearComponent(const std::string& componentTag, int listIndex = -1)
bool ClearComponent(unsigned componentID, int listIndex = -1)

Clears a specified component. The listIndex is intended for listComponents, e.g. co-factors. If the listIndex is -1 the entire list is removed, otherwise only the co-factor with the given index is removed.