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 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 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
OEStructureQuality class
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
OETrans class
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.
GetAltLoc
std::string GetAltLoc() const
Returns the alternate location code used to generate the OEDesignUnit.
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.