diff --git a/java/src/org/broadinstitute/sting/gatk/iterators/LocusIteratorByState.java b/java/src/org/broadinstitute/sting/gatk/iterators/LocusIteratorByState.java
index bb0d9b8dd..bfb6781fe 100755
--- a/java/src/org/broadinstitute/sting/gatk/iterators/LocusIteratorByState.java
+++ b/java/src/org/broadinstitute/sting/gatk/iterators/LocusIteratorByState.java
@@ -213,11 +213,12 @@ public class LocusIteratorByState extends LocusIterator {
// todo -- performance problem -- should be lazy, really
for ( SAMRecordState state : readStates ) {
- size++;
if ( state.getCurrentCigarOperator() != CigarOperator.D && state.getCurrentCigarOperator() != CigarOperator.N ) {
+ size++;
PileupElement p = new PileupElement(state.getRead(), state.getReadOffset());
pile.add(p);
} else if ( readInfo.includeReadsWithDeletionAtLoci() && state.getCurrentCigarOperator() != CigarOperator.N ) {
+ size++;
pile.add(new PileupElement(state.getRead(), -1));
nDeletions++;
}
diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/SAMPileupRecord.java b/java/src/org/broadinstitute/sting/gatk/refdata/SAMPileupRecord.java
index 60b4bd429..a84d9268a 100644
--- a/java/src/org/broadinstitute/sting/gatk/refdata/SAMPileupRecord.java
+++ b/java/src/org/broadinstitute/sting/gatk/refdata/SAMPileupRecord.java
@@ -9,6 +9,7 @@ import java.util.regex.Matcher;
import org.broadinstitute.sting.utils.*;
import net.sf.picard.reference.ReferenceSequenceFileWalker;
+import net.sf.samtools.util.StringUtil;
/**
* This class wraps Maq/samtools allele calls from pileup format and presents them as a ROD.
@@ -402,8 +403,24 @@ public class SAMPileupRecord implements Genotype, GenotypeList {
public ArrayList getBasesAsArrayList() { throw new StingException("Not implemented"); }
public ArrayList getQualsAsArrayList() { throw new StingException("Not implemented"); }
- public byte[] getBases() { throw new StingException("Not implemented"); }
- public byte[] getQuals() { throw new StingException("Not implemented"); }
+
+ /**
+ * Gets the bases in byte array form.
+ * @return byte array of the available bases.
+ */
+ public byte[] getBases() {
+ return StringUtil.stringToBytes(getBasesAsString());
+ }
+
+ /**
+ * Gets the Phred base qualities without ASCII offset.
+ * @return Phred base qualities.
+ */
+ public byte[] getQuals() {
+ byte[] quals = StringUtil.stringToBytes(getQualsAsString());
+ for(int i = 0; i < quals.length; i++) quals[i] -= 33;
+ return quals;
+ }
/** Returns bases in the reference allele as a String. For point genotypes, the string consists of a single
* character (reference base). For indel genotypes, the string is empty for insertions into
diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/qc/ValidatingPileupWalker.java b/java/src/org/broadinstitute/sting/gatk/walkers/qc/ValidatingPileupWalker.java
index 0afab418d..01fdb90b7 100755
--- a/java/src/org/broadinstitute/sting/gatk/walkers/qc/ValidatingPileupWalker.java
+++ b/java/src/org/broadinstitute/sting/gatk/walkers/qc/ValidatingPileupWalker.java
@@ -70,7 +70,7 @@ public class ValidatingPileupWalker extends LocusWalker