Package org.biojava.bio.structure
Interface Chain
-
- All Known Implementing Classes:
ChainImpl
public interface Chain
Defines the interface for a Chain. A Chain corresponds to a Chain in a PDB file. A chain consists out of a list of
Group
objects. A Group can either be anAminoAcid
,Hetatom
orNucleotide
.The BioJava API provides access to both the ATOM and SEQRES records in a PDB file. During parsing of a PDB file it aligns the ATOM and SEQRES groups and joins them. The SEQRES sequence can be accessed via
getSeqResGroups()
and the ATOM groups viagetAtomGroups()
. Groups that have been observed (i.e. they are in the ATOM records) can be detected byGroup
.has3D()- Since:
- 1.4
- Version:
- %I% %G%
- Author:
- Andreas Prlic
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description void
addGroup(Group group)
add a group to the list of ATOM record group of this chain.java.lang.Object
clone()
returns an identical copy of this Chain.Annotation
getAnnotation()
get/set the Annotation of a Chain.Group
getAtomGroup(int position)
return the Group at position X.java.util.List<Group>
getAtomGroups()
Return all groups that have been specified in the ATOM section of this chain .java.util.List<Group>
getAtomGroups(java.lang.String type)
Return a List of all groups of a special type (e.g.int
getAtomLength()
Return the number of Groups in the ATOM records of the chain.java.lang.String
getAtomSequence()
Return the sequence of amino acids as it has been provided in the ATOM records.Sequence
getBJSequence()
Convert the SEQRES groups of a Chain to a Biojava Sequence object.Group
getGroup(int position)
Deprecated.use getAtomGroup or getSeqResGroup insteadGroup
getGroupByPDB(java.lang.String pdbresnum)
get a group by its PDB residue numbering.java.util.List<Group>
getGroups()
Deprecated.use getAtomGroups or getSeqResGroups insteadjava.util.List<Group>
getGroups(java.lang.String type)
Deprecated.use getAtomGroups or getSeqResGroups insteadGroup[]
getGroupsByPDB(java.lang.String pdbresnumStart, java.lang.String pdbresnumEnd)
Get all groups that are located between two PDB residue numbers.Group[]
getGroupsByPDB(java.lang.String pdbresnumStart, java.lang.String pdbresnumEnd, boolean ignoreMissing)
Get all groups that are located between two PDB residue numbers.Compound
getHeader()
Returns the Header ( a Compound object) for this chain.java.lang.Long
getId()
Get the ID used by Hibernate.int
getLength()
Deprecated.please use getAtomLength or getLengthSeqRes insteadint
getLengthAminos()
Deprecated.use getAtomGroups("amino").size() instead.java.lang.String
getName()
get and set the name of this chain (Chain id in PDB file ).Structure
getParent()
Returns the parent Structure of this chain.Group
getSeqResGroup(int position)
return the Group at position X.java.util.List<Group>
getSeqResGroups()
Return all groups of this chain.java.util.List<Group>
getSeqResGroups(java.lang.String type)
Return a List of all groups of a special type (e.g.int
getSeqResLength()
Returns the number of groups in the SEQRES records of the chain.java.lang.String
getSeqResSequence()
Get the sequence for all amino acids as it is specified in the SEQRES residues.java.lang.String
getSequence()
Deprecated.use getAtomSequence insteadjava.lang.String
getSwissprotId()
Get the Swissprot id of this chain.void
setAnnotation(Annotation anno)
get/set the Annotation of a Chain.void
setAtomGroups(java.util.List<Group> groups)
Set all groups that have been specified in the ATOM section of this chain .void
setHeader(Compound molId)
Set the Header from the PDB file.void
setId(java.lang.Long id)
Set the ID used by Hibernate.void
setName(java.lang.String name)
get and set the name of this chain (Chain id in PDB file ).void
setParent(Structure parent)
Set the back-reference to its parent Structure.void
setSeqResGroups(java.util.List<Group> seqResGroups)
Set the list of SeqResGroups for this chain.void
setSwissprotId(java.lang.String sp_id)
Set the Swissprot id of this chain.java.lang.String
toString()
string representation.
-
-
-
Method Detail
-
clone
java.lang.Object clone()
returns an identical copy of this Chain.- Returns:
- an identical copy of this Chain
-
addGroup
void addGroup(Group group)
add a group to the list of ATOM record group of this chain. To add SEQRES records a more complex alignment between ATOM and SEQRES residues is required, please see SeqRes2AtomAligner for more details on that.- Parameters:
group
- a Group object
-
getId
java.lang.Long getId()
Get the ID used by Hibernate.- Returns:
- the ID used by Hibernate
- See Also:
setId(Long)
-
setId
void setId(java.lang.Long id)
Set the ID used by Hibernate.- Parameters:
id
- assigned by Hibernate- See Also:
getId()
-
getGroup
Group getGroup(int position)
Deprecated.use getAtomGroup or getSeqResGroup insteadreturn the amino acid at position X.- Parameters:
position
- an int- Returns:
- a Group object
- See Also:
getAtomGroup(int)
,getSeqResGroup(int)
-
getAtomGroup
Group getAtomGroup(int position)
return the Group at position X.- Parameters:
position
- an int- Returns:
- a Group object
-
getSeqResGroup
Group getSeqResGroup(int position)
return the Group at position X.- Parameters:
position
- an int- Returns:
- a Group object
-
getGroups
java.util.List<Group> getGroups(java.lang.String type)
Deprecated.use getAtomGroups or getSeqResGroups insteadreturn a List of all groups of a special type (e.g. amino, hetatm, nucleotide).- Parameters:
type
- a String- Returns:
- a List object
-
getGroups
java.util.List<Group> getGroups()
Deprecated.use getAtomGroups or getSeqResGroups insteadreturn all groups of this chain.- Returns:
- a List of all Group objects of this chain
-
getAtomGroups
java.util.List<Group> getAtomGroups()
Return all groups that have been specified in the ATOM section of this chain .- Returns:
- a List object representing the Groups of this Chain.
- See Also:
setAtomGroups(List)
-
setAtomGroups
void setAtomGroups(java.util.List<Group> groups)
Set all groups that have been specified in the ATOM section of this chain .- Parameters:
groups
- a List object representing the Groups of this Chain.- See Also:
getAtomGroups()
-
getAtomGroups
java.util.List<Group> getAtomGroups(java.lang.String type)
Return a List of all groups of a special type (e.g. amino, hetatm, nucleotide).- Parameters:
type
- a String- Returns:
- a List object
- See Also:
setAtomGroups(List)
-
getGroupByPDB
Group getGroupByPDB(java.lang.String pdbresnum) throws StructureException
get a group by its PDB residue numbering. if the PDB residue number is not know, throws a StructureException.- Parameters:
pdbresnum
- the PDB residue number of the group- Returns:
- the matching group
- Throws:
StructureException
-
getGroupsByPDB
Group[] getGroupsByPDB(java.lang.String pdbresnumStart, java.lang.String pdbresnumEnd) throws StructureException
Get all groups that are located between two PDB residue numbers.- Parameters:
pdbresnumStart
- PDB residue number of startpdbresnumEnd
- PDB residue number of end- Returns:
- Groups in between. or throws a StructureException if either start or end can not be found,
- Throws:
StructureException
-
getGroupsByPDB
Group[] getGroupsByPDB(java.lang.String pdbresnumStart, java.lang.String pdbresnumEnd, boolean ignoreMissing) throws StructureException
Get all groups that are located between two PDB residue numbers. In contrast to getGroupsByPDB this method call ignores if the exact outer groups are not found. This is useful e.g. when requesting the range of groups as specified by the DBREF records - these frequently are rather inaccurate.- Parameters:
pdbresnumStart
- PDB residue number of startpdbresnumEnd
- PDB residue number of endignoreMissing
- ignore missing groups in this range.- Returns:
- Groups in between. or throws a StructureException if either start or end can not be found,
- Throws:
StructureException
-
getLength
int getLength()
Deprecated.please use getAtomLength or getLengthSeqRes insteadget total length of chain, including HETATMs..- Returns:
- an int representing the length of the whole chain including HETATMs
- See Also:
getAtomLength()
,getSeqResLength()
-
getAtomLength
int getAtomLength()
Return the number of Groups in the ATOM records of the chain.- Returns:
- the length
-
getSeqResLength
int getSeqResLength()
Returns the number of groups in the SEQRES records of the chain.- Returns:
- the length
-
getLengthAminos
int getLengthAminos()
Deprecated.use getAtomGroups("amino").size() instead.returns the length of the AminoAcids in the ATOM records of this chain. note: not all amino acids need to have 3D coords, in fact in could be that none has!- Returns:
- an int representing the length of the AminoAcids in the ATOM records of the chain.
-
setAnnotation
void setAnnotation(Annotation anno)
get/set the Annotation of a Chain. allows to annotate a protein chain, e.g. molecule description "AZURIN" for pdb 1a4a.A- Parameters:
anno
- the Annotation to be provided.- See Also:
getAnnotation()
-
getAnnotation
Annotation getAnnotation()
get/set the Annotation of a Chain. allows to annotate a protein chain, e.g. molecule description "AZURIN" for pdb 1a4a.A- Returns:
- the Annotation of this chain
- See Also:
setAnnotation(Annotation)
-
setHeader
void setHeader(Compound molId)
Set the Header from the PDB file.- Parameters:
molId
- the Compound that contains the header information for this chain- See Also:
getHeader()
-
getHeader
Compound getHeader()
Returns the Header ( a Compound object) for this chain.- Returns:
- the Compound object that contains the Header information
- See Also:
setHeader(Compound)
-
setName
void setName(java.lang.String name)
get and set the name of this chain (Chain id in PDB file ).- Parameters:
name
- a String specifying the name value- See Also:
getName()
-
getName
java.lang.String getName()
get and set the name of this chain (Chain id in PDB file ).- Returns:
- a String representing the name value
- See Also:
setName(java.lang.String)
-
toString
java.lang.String toString()
string representation.- Overrides:
toString
in classjava.lang.Object
-
getBJSequence
Sequence getBJSequence() throws IllegalSymbolException
Convert the SEQRES groups of a Chain to a Biojava Sequence object.- Returns:
- the SEQRES groups of the Chain as a Sequence object.
- Throws:
IllegalSymbolException
-
getSequence
java.lang.String getSequence()
Deprecated.use getAtomSequence insteadreturn the amino acid sequence of this chain ( all aminos even if they do not have 3D data ...).- Returns:
- the sequence as a string
- See Also:
getAtomSequence()
-
getAtomSequence
java.lang.String getAtomSequence()
Return the sequence of amino acids as it has been provided in the ATOM records.- Returns:
- amino acid sequence as string
- See Also:
getSeqResSequence()
-
getSeqResSequence
java.lang.String getSeqResSequence()
Get the sequence for all amino acids as it is specified in the SEQRES residues.- Returns:
- the amino acid sequence of the SEQRES sequence as a string
- See Also:
getAtomSequence()
-
setSwissprotId
void setSwissprotId(java.lang.String sp_id)
Set the Swissprot id of this chain.- Parameters:
sp_id
- a String specifying the swissprot id value- See Also:
getSwissprotId()
-
getSwissprotId
java.lang.String getSwissprotId()
Get the Swissprot id of this chain.- Returns:
- a String representing the swissprot id value
- See Also:
setSwissprotId(String sp_id)
-
getSeqResGroups
java.util.List<Group> getSeqResGroups(java.lang.String type)
Return a List of all groups of a special type (e.g. amino, hetatm, nucleotide).- Parameters:
type
- a String- Returns:
- an List object
- See Also:
setSeqResGroups(List)
-
getSeqResGroups
java.util.List<Group> getSeqResGroups()
Return all groups of this chain.- Returns:
- a List of all Group objects of this chain
- See Also:
setSeqResGroups(List)
-
setSeqResGroups
void setSeqResGroups(java.util.List<Group> seqResGroups)
Set the list of SeqResGroups for this chain.- Parameters:
seqResGroups
- a List of Group objects that from the SEQRES groups of this chain.- See Also:
getSeqResGroups()
-
setParent
void setParent(Structure parent)
Set the back-reference to its parent Structure.- Parameters:
parent
- the parent Structure object for this Chain- See Also:
getParent()
-
getParent
Structure getParent()
Returns the parent Structure of this chain.- Returns:
- the parent Structure object
- See Also:
setParent(Structure)
-
-