#include <entity_handle.hh>
Inherits ost::mol::EntityBase.
Molecules such as proteins and ligands are all represented as entities in OpenStructure. To work with subsets of atoms, residues, chains and bonds, refer to EntityView
Entities consist of zero or more chains of residues. The interface of entities is tailored to proteins, but is not limited to that. An entity may also represent a ligand or a collection of water molecules - hence the rather generic name. A new, empty entity is created with CreateEntity(). Atoms, residues, chains and bonds are added,removed or manipulated via editors.
Definition at line 56 of file entity_handle.hh.
| EntityHandle | ( | const impl::EntityImplPtr & | ) |
internally used ctor
| EntityHandle | ( | ) |
default ctor. creates invalid handle.
| void Apply | ( | EntityVisitor & | v | ) |
visitor interface
| AtomHandleIter AtomsBegin | ( | ) | const |
Iterator pointing to the beginning of atoms.
| AtomHandleIter AtomsEnd | ( | ) | const |
Iterator pointing to the end of atoms.
| void AttachObserver | ( | const EntityObserverPtr & | ) |
attach observer
| ChainHandleIter ChainsBegin | ( | ) | const |
Iterator pointing to the beginning of the chains.
| ChainHandleIter ChainsEnd | ( | ) | const |
Iterator pointing to the end of the chains.
| EntityHandle Copy | ( | ) | const |
copy entity, effectively duplicating the whole data structure
Alternative atom positions are not handled at all!
| EntityView CreateEmptyView | ( | ) | const |
return a (new) empty view of this entity
| EntityView CreateFullView | ( | ) | const |
return a (new) full view of this entity
| void DeepSwap | ( | EntityHandle & | eh | ) |
deep swaps the implementations, effectively affecting _all_ entity handles that point to either
| void DetachObserver | ( | const EntityObserverPtr & | ) |
remove observer
| AtomHandle FindAtom | ( | const String & | chain_name, | |
| const ResNum & | number, | |||
| const String & | atom_name | |||
| ) | const |
| ChainHandle FindChain | ( | const String & | name | ) | const |
Find chain by name.
Find chain within this entity with given name.
| ResidueHandle FindResidue | ( | const String & | chain_name, | |
| const ResNum & | number | |||
| ) | const |
| TorsionHandle FindTorsion | ( | const AtomHandle & | a1, | |
| const AtomHandle & | a2, | |||
| const AtomHandle & | a3, | |||
| const AtomHandle & | a4 | |||
| ) | const |
Search a specific torsion.
The order of atoms is important. For the torsion to exist, it must have been added before via AddTorsion.
| AtomHandleList FindWithin | ( | const geom::Vec3 & | pos, | |
| Real | radius | |||
| ) | const |
use atom hash to perform fast within lookup
Get angle in radians between bonds a1-a2 and a2-a3.
| Real GetAngle | ( | const AtomHandle & | a1, | |
| const AtomHandle & | a2, | |||
| const AtomHandle & | a3 | |||
| ) | const |
Get angle in radians between bonds a1-a2 and a2-a3.
| int GetAtomCount | ( | ) | const |
Get number of atoms of this entity.
To count the atoms of a specific chain or residue, use the respective method of ChainHandle and ResidueHandle.
| AtomHandleList GetAtomList | ( | ) | const |
| int GetBondCount | ( | ) | const |
Get number of bonds.
| mol::BondHandleList GetBondList | ( | ) | const |
Get list of bonds.
| geom::Vec3 GetBoundarySize | ( | ) | const |
Get size of the entity.
| geom::Vec3 GetCenterOfAtoms | ( | ) | const |
Get entity's center of atoms (not mass weighted).
Returns the center of all the atoms in an entity. This is similar to GetCenterOfMass(), but the atoms are not mass weighted
| geom::Vec3 GetCenterOfMass | ( | ) | const |
Get entity's center of mass (mass weighted).
| int GetChainCount | ( | ) | const |
Get number of chains of this entity.
| ChainHandleList GetChainList | ( | ) | const |
Get list of chains.
| geom::Vec3 GetGeometricCenter | ( | ) | const |
Get entity's geometric center.
Returns the geometric center of the entity's bounding box by calculating (GetGeometricStart()+GetGeometricEnd())/2
| geom::Vec3 GetGeometricEnd | ( | ) | const |
Get entity's maximum cartesian coordinates.
| geom::Vec3 GetGeometricStart | ( | ) | const |
Get entity's minimum cartesian coordinates.
| EntityHandle GetHandle | ( | ) | const |
get this handle
Useful for templated code and duck-typing in Python
| const geom::Mat4& GetInvTransformationMatrix | ( | ) | const |
| Real GetMass | ( | ) | const |
Get entity's mass.
| int GetResidueCount | ( | ) | const |
Get number of residues of this entity.
To count the atoms of a chain, use the GetResidueCount() of ChainHandle.
| ResidueHandleList GetResidueList | ( | ) | const |
| const geom::Mat4& GetTransformationMatrix | ( | ) | const |
| bool IsTransformationIdentity | ( | ) | const |
| bool operator!= | ( | const EntityHandle & | ref | ) | const |
| bool operator== | ( | const EntityHandle & | ref | ) | const |
Get editor for the internal coordinate system to manipulate torsions bond lengths and angles between bonds.
Get editor for external coordinate system to manipulate atom positions.
| ResidueHandleIter ResiduesBegin | ( | ) | const |
Iterator pointing to the beginning of the residues.
The residues are first ordered by chain and then ascending residue number.
| ResidueHandleIter ResiduesEnd | ( | ) | const |
Iterator pointing to the end of th residues.
The two iterators returned by ResiduesBegin() and ResiduesEnd() form a half-closed range. It is cheaper to cache the iterator returned by ResiduesEnd() than to call ResiduesEnd() after very loop, i.e. like
// e is an instance of EntityHandle for (ResidueHandleIter i=e.ResiduesBegin(), x=e.ResiduesEnd(); i!=x; ++i) { . . . }
| EntityView Select | ( | const String & | query_string, | |
| QueryFlags | flags = 0 | |||
| ) | const |
| EntityView Select | ( | const Query & | q, | |
| QueryFlags | flags = 0 | |||
| ) | const |
| void Swap | ( | EntityHandle & | eh | ) |
swaps implementations on the entity handle level
| DLLEXPORT_OST_MOL EntityHandle CreateEntity | ( | ) | [related] |
create entity
friend class ICSEditor [friend] |
Definition at line 59 of file entity_handle.hh.
friend class XCSEditor [friend] |
Definition at line 58 of file entity_handle.hh.
1.5.8