Class WindowedSequence<C extends Compound>
- java.lang.Object
 - 
- org.biojava.nbio.core.sequence.views.WindowedSequence<C>
 
 
- 
- Type Parameters:
 C- The type of compound we return from a window
- All Implemented Interfaces:
 Iterable<SequenceView<C>>
public class WindowedSequence<C extends Compound> extends Object implements Iterable<SequenceView<C>>
A sliding window view of a sequence which does not implement any interfaces likeSequencebecause they do not fit how this works. For each index requested we return a SequenceView or List of compounds back. If you perform a view on a Sequence whose length is not a multiple of the window the final window will be omitted i.e. if we have the sequence AGCGG and a window of 3 then you will only see AGC since GG exceeds the calculated length of this sequence. Because this does not implement a Sequence interface we do not recommend passing this class around. If you need to represent a windowed sequence as a real Sequence then translate it into a new Compound- Author:
 - ayates
 
 
- 
- 
Constructor Summary
Constructors Constructor Description WindowedSequence(Sequence<C> sequence, int windowSize) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SequenceView<C>get(int index)Returns the window specified at the given index in offsets i.e. asking for position 2 in a moving window sequence of size 3 will get you the window starting at position 4.Sequence<C>getBackingSequence()Access the sequence which backs this windowList<C>getCompounds(int index)For a given position into the windowed view this will return those compounds we can see in the window. i.e. in the sequence AGGCCT requesting index 1 returns AGG and requesting index 2 return CCT.intgetLength()Returns the size of the windowed sequence which is the length by the window size.intgetWindowSize()Access the current window sizeIterator<SequenceView<C>>iterator()Returns an iterator which will return the windows in a sequence in sequential order.protected inttoStartIndex(int index)Calculates start index according to the equation start = ( (index-1) - windowSize) +1- 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
- 
Methods inherited from interface java.lang.Iterable
forEach, spliterator 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
WindowedSequence
public WindowedSequence(Sequence<C> sequence, int windowSize)
 
 - 
 
- 
Method Detail
- 
getWindowSize
public int getWindowSize()
Access the current window size 
- 
getBackingSequence
public Sequence<C> getBackingSequence()
Access the sequence which backs this window 
- 
toStartIndex
protected int toStartIndex(int index)
Calculates start index according to the equation start = ( (index-1) - windowSize) +1 
- 
getLength
public int getLength()
Returns the size of the windowed sequence which is the length by the window size. Trailing Compounds are omitted. 
- 
getCompounds
public List<C> getCompounds(int index)
For a given position into the windowed view this will return those compounds we can see in the window. i.e. in the sequence AGGCCT requesting index 1 returns AGG and requesting index 2 return CCT.- Parameters:
 index- Windowed index position- Returns:
 - The List of compounds
 
 
- 
get
public SequenceView<C> get(int index)
Returns the window specified at the given index in offsets i.e. asking for position 2 in a moving window sequence of size 3 will get you the window starting at position 4. 
 - 
 
 -