org.biojava.nbio.structure.quaternary.BioAssemblyInfo Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of biojava-structure Show documentation
Show all versions of biojava-structure Show documentation
The protein structure modules of BioJava.
/*
* BioJava development code
*
* This code may be freely distributed and modified under the
* terms of the GNU Lesser General Public Licence. This should
* be distributed with the code. If you do not have a copy,
* see:
*
* http://www.gnu.org/copyleft/lesser.html
*
* Copyright for this code is held jointly by the individual
* authors. These should be listed in @author doc comments.
*
* For more information on the BioJava project and its aims,
* or to join the biojava-l mailing list, visit the home page
* at:
*
* http://www.biojava.org/
*
*/
package org.biojava.nbio.structure.quaternary;
import java.io.Serializable;
import java.util.List;
/**
* Representation of a Biological Assembly annotation as provided by the PDB.
* Contains all the information required to build the Biological Assembly from
* the asymmetric unit.
* Note that the PDB allows for 1 or more Biological Assemblies for a given entry. They
* are identified by the id field.
*
* @author Jose Duarte
*/
public class BioAssemblyInfo implements Serializable {
private static final long serialVersionUID = 1L;
private int id;
private List transforms;
private int macromolecularSize;
/**
* Empty constructor
*/
public BioAssemblyInfo() {
}
/**
* The identifier for this Biological Assembly, from 1 to n
* @return
*/
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
/**
* Return the list of {@link BiologicalAssemblyTransformation}s needed to generate
* the biological assembly. There is one transformation per internal chain id.
* @return
*/
public List getTransforms() {
return transforms;
}
public void setTransforms(List transforms) {
this.transforms = transforms;
}
/**
* Returns the macromolecular size of this biological assembly, i.e.
* the number of polymeric chains (protein or nucleotide chains, not sugars)
* in the biological assembly.
* @return
*/
public int getMacromolecularSize() {
return macromolecularSize;
}
public void setMacromolecularSize(int macromolecularSize) {
this.macromolecularSize = macromolecularSize;
}
@Override
public String toString() {
return "[BioAssembly "+id+": "+transforms.size()+" transforms, mm size "+macromolecularSize+"]";
}
}