Class BlockSetImpl

java.lang.Object
org.biojava.nbio.structure.align.multiple.AbstractScoresCache
org.biojava.nbio.structure.align.multiple.BlockSetImpl
All Implemented Interfaces:
Serializable, Cloneable, BlockSet, ScoresCache

public class BlockSetImpl extends AbstractScoresCache implements Serializable, BlockSet, Cloneable
A general implementation of a BlockSet to store a flexible part of a multiple alignment.
Since:
4.1.0
Author:
Aleix Lafita
See Also:
  • Constructor Details

    • BlockSetImpl

      public BlockSetImpl(MultipleAlignment alignment)
      Constructor. Links also the parent to this instance by adding the BlockSet to the parent's List.
      Parameters:
      alignment - MultipleAlignment parent of the BlockSet.
    • BlockSetImpl

      public BlockSetImpl(BlockSetImpl bs)
      Copy constructor. Makes also a deep copy of all constituent Block s.
      Parameters:
      bs - BlockSet object to be copied.
  • Method Details

    • clear

      public void clear()
      Description copied from class: AbstractScoresCache
      Clear the cached scores. This frees memory after the alignment changed.
      Specified by:
      clear in interface BlockSet
      Overrides:
      clear in class AbstractScoresCache
    • clone

      public BlockSetImpl clone()
      Description copied from interface: BlockSet
      Creates and returns an identical copy of this blockset, including a deep copy of all constituent Blocks.
      Specified by:
      clone in interface BlockSet
      Overrides:
      clone in class Object
      Returns:
      BlockSet identical copy of this object.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getMultipleAlignment

      public MultipleAlignment getMultipleAlignment()
      Description copied from interface: BlockSet
      Returns the parent MultipleAlignment of the BlockSet. Returns null if there is no referenced object.
      Specified by:
      getMultipleAlignment in interface BlockSet
      Returns:
      MultipleAlignment the parent MultipleAlignment of the BlockSet, or null.
      See Also:
    • setMultipleAlignment

      public void setMultipleAlignment(MultipleAlignment parent)
      Description copied from interface: BlockSet
      Set the back-reference to its parent MultipleAlignment.

      Neither removes this BlockSet from its previous alignment, if any, nor adds it to the new parent. Calling code should assure that links to and from the ensemble are consistent and free of memory leaks.

      Specified by:
      setMultipleAlignment in interface BlockSet
      Parameters:
      parent - the parent MultipleAlignment.
      See Also:
    • getBlocks

      public List<Block> getBlocks()
      Description copied from interface: BlockSet
      Returns the List of alignment Blocks of the BlockSet. It initializes a new List of Blocks if it is null.
      Specified by:
      getBlocks in interface BlockSet
      Returns:
      List of alignment Blocks.
      See Also:
    • setBlocks

      public void setBlocks(List<Block> blocks)
      Description copied from interface: BlockSet
      Set the List of alignment Blocks of the BlockSet.

      Also calls Block.setBlockSet(BlockSet) for each argument

      Specified by:
      setBlocks in interface BlockSet
      Parameters:
      blocks - List of alignment Blocks.
      See Also:
    • getTransformations

      public List<javax.vecmath.Matrix4d> getTransformations()
      Description copied from interface: BlockSet
      Returns a transformation matrix for each structure giving the 3D superimposition information of the multiple structure alignment.
      Specified by:
      getTransformations in interface BlockSet
      Returns:
      the 3D superimposition information of the alignment
    • setTransformations

      public void setTransformations(List<javax.vecmath.Matrix4d> transformations)
      Description copied from interface: BlockSet
      Set a new superposition for the structures. This may trigger other properties to update which depend on the superposition.
      Specified by:
      setTransformations in interface BlockSet
    • length

      public int length()
      Description copied from interface: BlockSet
      Returns the total number of aligned residues (columns) in the alignment: the sum of all Block lengths.
      Specified by:
      length in interface BlockSet
      Returns:
      int the total number of aligned residues.
      See Also:
    • size

      public int size()
      Description copied from interface: BlockSet
      Returns the number of aligned structures in the BlockSet.
      Specified by:
      size in interface BlockSet
      Returns:
      int number of aligned structures
      See Also:
    • getCoreLength

      public int getCoreLength()
      Description copied from interface: BlockSet
      Returns the number of aligned residues (columns) without gaps in the alignment: the sum of all Block core lengths.
      Specified by:
      getCoreLength in interface BlockSet
      Returns:
      int the total number of aligned residues.
      See Also:
    • updateLength

      protected void updateLength()
    • updateCoreLength

      protected void updateCoreLength()
    • updateCache

      protected void updateCache()
    • getAlignResCounts

      public List<Integer> getAlignResCounts()
      Description copied from interface: BlockSet
      Returns the number of non null positions (residues) of each structure in the alignment Block Set. The values can be used to compute the coverages.
      Specified by:
      getAlignResCounts in interface BlockSet
      Returns:
      List of residue counts for each structure