* Gets the an iterator over the given reads, which will iterate over the reads in the given shard.
* @param shard the shard to use when querying reads.
* @return an iterator over the reads specified in the shard.
*/
protected GATKSAMIterator getReadIterator(Shard shard) {
return (!reads.isEmpty()) ? reads.seek(shard) : new NullSAMIterator();
}