PAtom Class Reference

#include <PAtom.h>

List of all members.


Detailed Description

Encapsulates a single atom in the protein loop. PAtom contains methods to translate and apply matrix transformations to the atom's position; find other atom(s) in collision with it; and perform traversals of the graph represented by atoms and their bonds. Makes an assumption that the atoms of the same type are the same size.


Public Member Functions

 PAtom (PBlock *block, const string &name, Vector3 position, const string &id)
 ~PAtom ()
string getID () const
void changePosition (const Vector3 &newPosition)
void ApplyTransform (const Matrix4 &transform)
AtomSetgetAllCollidingStatic () const
AtomSetgetAllCollidingSelf () const
AtomSetgetAllCollidingEither () const
PBondgetBond (PResidue *res, const string &id)
PAtomFindStaticCollision () const
PAtomFindSelfCollision () const
PAtomFindAnyCollision () const
bool InStaticCollision () const
bool InSelfCollision () const
bool InAnyCollision () const
bool isOnBackbone () const
PBlockgetParentBlock ()
PResiduegetParentResidue ()
PChaingetChain () const
Vector3 getPos () const
const vector< PBond * > * getBonds () const
Real getCovalentRadius () const
Real getVanDerWaalsRadius () const
Real getOccupancy () const
void setOccupancy (Real newVal)
Real getTempFactor () const
void setTempFactor (Real newVal)
void setColor (const GLColor setColor)
void revertColor ()
GLColor getColor () const
string getName () const
Vector3 getGridPos () const
bool WithinActiveBlock () const
bool isBonded (const PAtom *other) const
void traverseChain (AtomFunctor *atomFn, BondFunctor *bondFn)
void traverseAtoms (AtomFunctor *atomFn)
void traverseBonds (BondFunctor *bondFn)
const PSpaceManagergetSpaceManager () const
bool isActive () const
void inactivate ()
void activate ()

Static Public Member Functions

static int shortestBondPath (const PAtom *a1, const PAtom *a2, int threshold=-1)

Friends

class PBond
class PResidue
class PBlock


Constructor & Destructor Documentation

PAtom::PAtom ( PBlock block,
const string &  name,
Vector3  position,
const string &  id 
)

Constructs a new PAtom in the specified block, with the given name and global coordinates.

PAtom::~PAtom (  ) 

Destroys a PAtom, frees any memory associated with it, and removes it from the collision grid.


Member Function Documentation

string PAtom::getID (  )  const [inline]

Returns the ID this atom has within its residue.

void PAtom::changePosition ( const Vector3 &  newPosition  ) 

Moves this atom to the specified global coordinates and updates its position in the collision grid.

void PAtom::ApplyTransform ( const Matrix4 &  transform  ) 

Applies the specified matrix transformation to this atom's position.

AtomSet * PAtom::getAllCollidingStatic (  )  const

Returns the set of all atoms in static collision with this atom.

AtomSet * PAtom::getAllCollidingSelf (  )  const

Returns the set of all atoms in self collision with this atom.

AtomSet * PAtom::getAllCollidingEither (  )  const

Returns the set of atoms in any collision (self or static) with this atom.

PBond * PAtom::getBond ( PResidue res,
const string &  id 
)

Returns bond to atom in residue res with id id.

PAtom * PAtom::FindStaticCollision (  )  const

Returns any atom in static collision with this atom, or NULL if no such atom exists.

PAtom * PAtom::FindSelfCollision (  )  const

Returns any atom in self collision with this atom, or NULL if no such atom exists.

PAtom * PAtom::FindAnyCollision (  )  const

Returns any atom in either static or self collision with this atom, or NULL if no such atom exists.

bool PAtom::InStaticCollision (  )  const

Returns true if any atom is in static collision with this atom, false otherwise.

bool PAtom::InSelfCollision (  )  const

Returns true if any atom is in self collision with this atom, false otherwise.

bool PAtom::InAnyCollision (  )  const

Returns true if any atom is in either static or self collision with this atom, false otherwise.

bool PAtom::isOnBackbone (  )  const

Returns true if this atom is on the backbone

PBlock* PAtom::getParentBlock (  )  [inline]

Returns the atom's parent block.

PResidue * PAtom::getParentResidue (  ) 

Returns the atom's parent residue.

PChain * PAtom::getChain (  )  const

Returns the atom's parent chain.

Vector3 PAtom::getPos (  )  const [inline]

Returns the atom's global coordinates.

const vector<PBond *>* PAtom::getBonds (  )  const [inline]

Returns all the bonds that include this atom.

Real PAtom::getCovalentRadius (  )  const [inline]

Returns the atom's covalent radius.

Real PAtom::getVanDerWaalsRadius (  )  const [inline]

Returns the atom's van der Waals radius.

Real PAtom::getOccupancy (  )  const [inline]

Returns the atom's occupancy.

void PAtom::setOccupancy ( Real  newVal  )  [inline]

Sets the atom's occupancy to newVal.

Real PAtom::getTempFactor (  )  const [inline]

Returns the atom's temperature factor.

void PAtom::setTempFactor ( Real  newVal  )  [inline]

Sets the atom's temperature factor to newVal.

void PAtom::setColor ( const GLColor  setColor  )  [inline]

Sets the color to be drawn when this atom is displayed graphically. If not used, the default color is from PAtomShell.

void PAtom::revertColor (  )  [inline]

Reverts to the default color.

GLColor PAtom::getColor (  )  const [inline]

Returns the color to be drawn when this atom is displayed graphically.

string PAtom::getName (  )  const [inline]

Returns this atom's name.

Vector3 PAtom::getGridPos (  )  const

Returns this atom's coordinates in the collision grid.

bool PAtom::WithinActiveBlock (  )  const

Returns true if this atom's parent block is currently active, false otherwise.

bool PAtom::isBonded ( const PAtom other  )  const

Returns true if this atom is bonded to other, false otherwise.

int PAtom::shortestBondPath ( const PAtom a1,
const PAtom a2,
int  threshold = -1 
) [static]

Returns the length of the shortest bond path between a1 and a2. If a1 == a2, returns 0; if a1 is bonded to a2, returns 1.

The optional parameter threshold allows the caller to specify a "cutoff" for the maximum length of the path. If threshold >= 0 and the shortest path is found to be at least threshold bonds long, this value will be returned immediately. The default value threshold = -1 specifies no cutoff.

void PAtom::traverseChain ( AtomFunctor atomFn,
BondFunctor bondFn 
)

Initiates a traversal of the graph of atoms (nodes) and their bonds (vertices) at this atom, using the specified functors to be executed on each atom and bond.

void PAtom::traverseAtoms ( AtomFunctor atomFn  )  [inline]

Initiates a traversal of the graph of atoms (nodes) and their bonds (vertices) at this atom, using the specified functor to be executed on each atom.

void PAtom::traverseBonds ( BondFunctor bondFn  )  [inline]

Initiates a traversal of the graph of atoms (nodes) and their bonds (vertices) at this atom, using the specified functor to be executed on each bond.

const PSpaceManager * PAtom::getSpaceManager (  )  const

Returns the space manager for the chain this atom is in.

bool PAtom::isActive (  )  const [inline]

Returns true if this atom is active for collision checking, false otherwise.

void PAtom::inactivate (  )  [inline]

Makes this atom inactive for collision checking.

void PAtom::activate (  )  [inline]

Make the atom active for collision checking.


Friends And Related Function Documentation

friend class PBond [friend]

friend class PResidue [friend]

friend class PBlock [friend]


The documentation for this class was generated from the following files:
Generated on Wed May 16 20:22:12 2007 for LoopTK: Protein Loop Kinematic Toolkit by  doxygen 1.5.1