C
- The type of compound we return from a windowjava.lang.Iterable<SequenceView<C>>
public class WindowedSequence<C extends Compound> extends java.lang.Object implements java.lang.Iterable<SequenceView<C>>
Sequence
because 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 CompoundConstructor | Description |
---|---|
WindowedSequence(Sequence<C> sequence,
int windowSize) |
Modifier and Type | Method | Description |
---|---|---|
SequenceView<C> |
get(int index) |
Returns the window specified at the given index in offsets i.e.
|
Sequence<C> |
getBackingSequence() |
Access the sequence which backs this window
|
java.util.List<C> |
getCompounds(int index) |
For a given position into the windowed view this will return those
compounds we can see in the window.
|
int |
getLength() |
Returns the size of the windowed sequence which is the length by the
window size.
|
int |
getWindowSize() |
Access the current window size
|
java.util.Iterator<SequenceView<C>> |
iterator() |
Returns an iterator which will return the windows in a sequence in
sequential order.
|
protected int |
toStartIndex(int index) |
Calculates start index according to the equation start = ( (index-1) -
windowSize) +1
|
public int getWindowSize()
public Sequence<C> getBackingSequence()
protected int toStartIndex(int index)
public int getLength()
public java.util.List<C> getCompounds(int index)
index
- Windowed index positionpublic SequenceView<C> get(int index)
public java.util.Iterator<SequenceView<C>> iterator()