org.simtk.molecularstructure.nucleicacid
Class BasePair

java.lang.Object
  extended by org.simtk.molecularstructure.SecondaryStructureClass
      extended by org.simtk.molecularstructure.nucleicacid.BasePair
All Implemented Interfaces:
java.lang.Iterable<Residue>, SecondaryStructure

public class BasePair
extends SecondaryStructureClass
implements java.lang.Iterable<Residue>


Nested Class Summary
static class BasePair.BondOrientation
           
static class BasePair.EdgeType
           
 
Nested classes/interfaces inherited from class org.simtk.molecularstructure.SecondaryStructureClass
SecondaryStructureClass.SourceType
 
Field Summary
protected  BasePair.BondOrientation bond_orient
           
protected  java.util.HashMap<Residue,BasePair.EdgeType> edges
           
protected  java.lang.String strand_orient
           
 
Fields inherited from class org.simtk.molecularstructure.SecondaryStructureClass
parentMolecules, residues, resLimit, sourceType
 
Constructor Summary
BasePair(Residue r1, Residue r2)
           
 
Method Summary
 void addResidue(Residue r)
           
 boolean equals(java.lang.Object o)
           
static BasePair getBasePair(Residue r1, Residue r2, java.lang.String source)
           
 Plane3D getBasePlane()
           
 BasePair.BondOrientation getBond_orient()
           
 BasePair.EdgeType getEdge(Residue res)
           
 Vector3D getHelixCenter()
          Estimate position at center of a double helix containing this base pair
 Residue getResidue1()
           
 Residue getResidue2()
           
 java.lang.String getStrand_orient()
           
 int hashCode()
           
 java.lang.Boolean isBetween(Residue r1, Residue r2)
           
 java.util.Iterator<Residue> iterator()
           
static BasePair makeBasePair(Residue r1, Residue r2, java.lang.String source)
           
 void setBond_orient(BasePair.BondOrientation bond_orient)
           
 void setBond_orient(java.lang.String bond)
           
 void setEdge(Residue res, BasePair.EdgeType edgeT)
           
 void setEdge(Residue res, java.lang.String edge)
           
 void setStrand_orient(java.lang.String strand_orient)
           
 java.lang.String toString()
           
 
Methods inherited from class org.simtk.molecularstructure.SecondaryStructureClass
addMolecule, getMolecules, getResidueIterator, getSource, residues, setMolecule, setSource
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

edges

protected java.util.HashMap<Residue,BasePair.EdgeType> edges

bond_orient

protected BasePair.BondOrientation bond_orient

strand_orient

protected java.lang.String strand_orient
Constructor Detail

BasePair

public BasePair(Residue r1,
                Residue r2)
Method Detail

getBasePair

public static BasePair getBasePair(Residue r1,
                                   Residue r2,
                                   java.lang.String source)

makeBasePair

public static BasePair makeBasePair(Residue r1,
                                    Residue r2,
                                    java.lang.String source)

getBond_orient

public BasePair.BondOrientation getBond_orient()

setBond_orient

public void setBond_orient(BasePair.BondOrientation bond_orient)

setBond_orient

public void setBond_orient(java.lang.String bond)

getEdge

public BasePair.EdgeType getEdge(Residue res)

setEdge

public void setEdge(Residue res,
                    BasePair.EdgeType edgeT)

setEdge

public void setEdge(Residue res,
                    java.lang.String edge)

getStrand_orient

public java.lang.String getStrand_orient()

setStrand_orient

public void setStrand_orient(java.lang.String strand_orient)

addResidue

public void addResidue(Residue r)
Specified by:
addResidue in interface SecondaryStructure
Overrides:
addResidue in class SecondaryStructureClass

getResidue1

public Residue getResidue1()

getResidue2

public Residue getResidue2()

getBasePlane

public Plane3D getBasePlane()
                     throws InsufficientAtomsException
Throws:
InsufficientAtomsException

getHelixCenter

public Vector3D getHelixCenter()
                        throws InsufficientAtomsException
Estimate position at center of a double helix containing this base pair

Returns:
the point at the center of the helix in the plane of the base pair
Throws:
InsufficientAtomsException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

iterator

public java.util.Iterator<Residue> iterator()
Specified by:
iterator in interface java.lang.Iterable<Residue>

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

isBetween

public java.lang.Boolean isBetween(Residue r1,
                                   Residue r2)