Search in sources :

Example 1 with PositionalDownsampler

use of org.broadinstitute.hellbender.utils.downsampling.PositionalDownsampler in project gatk by broadinstitute.

the class AssemblyRegionWalker method traverse.

@Override
public final void traverse() {
    CountingReadFilter countedFilter = makeReadFilter();
    // Since we're processing regions rather than individual reads, tell the progress
    // meter to check the time more frequently (every 10 regions instead of every 1000 regions).
    progressMeter.setRecordsBetweenTimeChecks(10L);
    for (final LocalReadShard readShard : readShards) {
        // Since reads in each shard are lazily fetched, we need to pass the filter to the window
        // instead of filtering the reads directly here
        readShard.setReadFilter(countedFilter);
        readShard.setDownsampler(maxReadsPerAlignmentStart > 0 ? new PositionalDownsampler(maxReadsPerAlignmentStart, getHeaderForReads()) : null);
        currentReadShard = readShard;
        processReadShard(readShard, // use the fully-padded window to fetch overlapping data
        new ReferenceContext(reference, readShard.getPaddedInterval()), new FeatureContext(features, readShard.getPaddedInterval()));
    }
    logger.info(countedFilter.getSummaryLine());
}
Also used : CountingReadFilter(org.broadinstitute.hellbender.engine.filters.CountingReadFilter) PositionalDownsampler(org.broadinstitute.hellbender.utils.downsampling.PositionalDownsampler)

Aggregations

CountingReadFilter (org.broadinstitute.hellbender.engine.filters.CountingReadFilter)1 PositionalDownsampler (org.broadinstitute.hellbender.utils.downsampling.PositionalDownsampler)1