int position = binAdaptor.getPosition();
ObjectArrayList<LocusScore> result = new ObjectArrayList<LocusScore>();
result.add(new BasicScore(initialStartPosition, position, 0.0f));
while (binAdaptor.hasNextTransition() && position < endLocation) {
binAdaptor.nextTransition();
// position is the zero-based position before the count is changed by the transition
position = binAdaptor.getPosition();
// count is how many reads cover the length bases that follow position.
final double count = selectedWindowFunction == WindowFunction.mean ? binAdaptor.getAverage() : binAdaptor.getMax();