Victor
 All Data Structures Functions Variables Friends Pages
Component Class Referenceabstract

Base class for composite structures. More...

+ Inheritance diagram for Component:
+ Collaboration diagram for Component:

Public Member Functions

virtual void bindIn (Atom &_this, Bond &c, Atom &_other)
 
virtual void bindIn (SimpleBond &c)
 
virtual void bindOut (Atom &_this, Bond &c, Atom &_other)
 
virtual void bindOut (SimpleBond &c)
 
bool collides (Component &other, double dist=0.0)
 
void copy (const Bond &orig)
 
virtual void copy (const SimpleBond &orig)
 
void copy (const Component &orig)
 
virtual const SimpleBondgetInBond (unsigned int n) const
 
virtual SimpleBondgetInBond (unsigned int n)
 
virtual AtomgetInBondRef (unsigned int n)
 
virtual vgVector3< double > getLowerBound (double dist=0.0)
 
unsigned int getMaxInBonds () const
 
unsigned int getMaxOutBonds () const
 
virtual AtomgetOpenInBondRef (unsigned int n=0)
 
virtual AtomgetOpenOutBondRef (unsigned int n=0)
 
virtual const SimpleBondgetOutBond (unsigned int n) const
 
virtual SimpleBondgetOutBond (unsigned int n)
 
virtual AtomgetOutBondRef (unsigned int n)
 
virtual string getType () const
 
virtual vgVector3< double > getUpperBound (double dist=0.0)
 
bool inSync ()
 
bool isBond (const SimpleBond &c) const
 
bool isInBond (const SimpleBond &c) const
 
bool isIndirectBond (const SimpleBond &c) const
 
bool isIndirectInBond (const SimpleBond &c) const
 
bool isIndirectOutBond (const SimpleBond &c) const
 
bool isOutBond (const SimpleBond &c) const
 
bool isTorsionBond (const SimpleBond &c) const
 
void setMaxInBonds (unsigned int m)
 
void setMaxOutBonds (unsigned int m)
 
virtual void setType (string _name)
 
unsigned int sizeInBonds () const
 
unsigned int sizeOpenInBonds () const
 
unsigned int sizeOpenOutBonds () const
 
unsigned int sizeOutBonds () const
 
virtual void unbindIn (Bond &c)
 
virtual void unbindIn (SimpleBond &c)
 
virtual void unbindOut (Bond &c)
 
virtual void unbindOut (SimpleBond &c)
 

Protected Member Functions

virtual void pUnbindIn (SimpleBond &c)
 
virtual void pUnbindOut (SimpleBond &c)
 

Detailed Description

Base class for composite structures.

Implementing the Composite pattern.

Member Function Documentation

void bindIn ( Atom _this,
Bond c,
Atom _other 
)
virtualinherited

In-going bond from this to c, from this' atom _this to c's _other atom.

Parameters
atomreference, bond reference, atom reference
Returns
void
void bindIn ( SimpleBond c)
virtualinherited

Sets and in-bond from this to c.

Reimplemented in Atom.

void bindOut ( Atom _this,
Bond c,
Atom _other 
)
virtualinherited

Out-going bond from this to c, from this' atom _this to c's _other atom.

Parameters
atomreference, bond reference, atom reference
Returns
void
void bindOut ( SimpleBond c)
virtualinherited

Sets and out-bond from this to c

Reimplemented in Atom.

bool collides ( Component other,
double  dist = 0.0 
)

Is other within dist of this' bounding box?

Parameters
other(Component)
dist(double)
Returns
True, if the component collides with "OTHER"
void copy ( const Bond orig)
inherited

Copy operator. Attention: copy() strips orig from its bonds and attaches them to the new bond.

Parameters
bondreference
Returns
void
void copy ( const SimpleBond orig)
virtualinherited

Copy operator. Attention: copy() strips orig from its bonds and attaches them to the new bond.

void copy ( const Component orig)

Copy the component. Attention: new elements have to be copied also in Monomer::copy() since it does NOT invoke this function (segmentation fault if it does).

Parameters
orig
const SimpleBond & getInBond ( unsigned int  n) const
virtualinherited

Returns i-th in-bond.

Reimplemented in Spacer, AminoAcid, Group, and SideChain.

SimpleBond & getInBond ( unsigned int  n)
virtualinherited

Returns i-th in-bond.

Reimplemented in Spacer, AminoAcid, Group, and SideChain.

Atom & getInBondRef ( unsigned int  n)
virtualinherited

Returns reference to the i-th in-bond atom.

Parameters
unsignedint
Returns
Atom reference
vgVector3< double > getLowerBound ( double  dist = 0.0)
virtual

Return the lower bound coordinates.

Parameters
dist
Returns
The lowerBound vector (vgVector2<double>)
unsigned int getMaxInBonds ( ) const
inherited

Get maximum of in-bonds.

unsigned int getMaxOutBonds ( ) const
inherited

Get maximum of out-bonds.

Atom & getOpenInBondRef ( unsigned int  n = 0)
virtualinherited

Returns reference to the i-th open in-bond atom. NB: This is undefined (ie. returns error) for Bond, but is needed for later structures (AminoAcid, etc.).

Parameters
unsignedint
Returns
Atom reference

Reimplemented in Spacer, and AminoAcid.

Atom & getOpenOutBondRef ( unsigned int  n = 0)
virtualinherited

Returns reference to the i-th open out-bond atom. NB: This is undefined (ie. returns error) for Bond, but is needed for later structures (AminoAcid, etc.).

Parameters
unsignedint
Returns
atom reference

Reimplemented in Spacer, and AminoAcid.

const SimpleBond & getOutBond ( unsigned int  n) const
virtualinherited

Returns i-th out-bond.

Reimplemented in Spacer, AminoAcid, Group, and SideChain.

SimpleBond & getOutBond ( unsigned int  n)
virtualinherited

Returns i-th out-bond.

Reimplemented in Spacer, AminoAcid, Group, and SideChain.

Atom & getOutBondRef ( unsigned int  n)
virtualinherited

Returns reference to the i-th in-bond atom.

Parameters
unsignedint
Returns
Atom reference
string getType ( ) const
virtualinherited

Is c bonded to this ?

Reimplemented in SideChain.

vgVector3< double > getUpperBound ( double  dist = 0.0)
virtual

Return the upper bound coordinates.

Parameters
dist
Returns
The upperBound vector (vgVector2<double>)
bool inSync ( )

Checks the "Modified" flag in the component.

Returns
True, if the component coordinates have been already syncronized. Checks also for the "superior" class status.
bool isBond ( const SimpleBond c) const
inherited

Is c bonded to this ?

bool isInBond ( const SimpleBond c) const
inherited

Is c in-bonded to this ?

bool isIndirectBond ( const SimpleBond c) const
inherited

Checks if this is indirectly bonded to c. (ie. A to C if A bond B and B bond C)

bool isIndirectInBond ( const SimpleBond c) const
inherited

Checks if this is indirectly bonded to c. (ie. A to C if A bond B and B bond C)

bool isIndirectOutBond ( const SimpleBond c) const
inherited

Checks if this is indirectly bonded to c. (ie. A to C if A bond B and B bond C)

bool isOutBond ( const SimpleBond c) const
inherited

Is c out-bonded to this ?

bool isTorsionBond ( const SimpleBond c) const
inherited

Checks if this is torsion bond to c. (ie. A to D if A indirect bond C and C bond D)

void pUnbindIn ( SimpleBond c)
protectedvirtualinherited

Private method to find the matching in-bond from c to this to remove.

void pUnbindOut ( SimpleBond c)
protectedvirtualinherited

Private method to find the matching out-bond from c to this to remove.

void setMaxInBonds ( unsigned int  m)
inherited

Sets maximum of in-bonds.

void setMaxOutBonds ( unsigned int  m)
inherited

Sets maximum of out-bonds.

void setType ( string  _name)
virtualinherited

Sets type (eg. C atom, GLY amino acid, etc.) of this.

Reimplemented in AminoAcid, Atom, and Nucleotide.

unsigned int sizeInBonds ( ) const
inherited

How many in-bonds are there ?

unsigned int sizeOpenInBonds ( ) const
inherited

Returns the number of open in-bonds, ie. how many in-bonds can still be added.

Parameters
void
Returns
unsigned int
unsigned int sizeOpenOutBonds ( ) const
inherited

Returns the number of open out-bonds, ie. how many out-bonds can still be added.

Parameters
void
Returns
unsigned int
unsigned int sizeOutBonds ( ) const
inherited

How many out-bonds are there ?

void unbindIn ( Bond c)
virtualinherited

Remove in-going bond from this to c.

Parameters
bondreference
Returns
void
void unbindIn ( SimpleBond c)
virtualinherited

Removes an in-bond from this to c.

Reimplemented in Atom.

void unbindOut ( Bond c)
virtualinherited

Remove out-going bond from this to c.

Parameters
bondreference
Returns
void
void unbindOut ( SimpleBond c)
virtualinherited

Removes an out-bond from this to c.

Reimplemented in Atom.


The documentation for this class was generated from the following files: