# Class FastWgsMetricsCollector

java.lang.Object
picard.analysis.AbstractWgsMetricsCollector<htsjdk.samtools.util.EdgingRecordAndOffset>
picard.analysis.FastWgsMetricsCollector

public class FastWgsMetricsCollector extends AbstractWgsMetricsCollector<htsjdk.samtools.util.EdgingRecordAndOffset>
Class represents fast algorithm for collecting data from `AbstractLocusInfo` with a list of aligned `EdgingRecordAndOffset` objects. According to the algorithm we receive only two `EdgingRecordAndOffset` objects for each alignment block of a read: one for the start of block and one for the end. When meeting a `EdgingRecordAndOffset` with type `EdgingRecordAndOffset.Type.BEGIN`, all information from the alignment block is accumulated in the collector, read name is added to a map holding the names of processed reads for detecting overlapping positions. When meeting a `EdgingRecordAndOffset` with type `EdgingRecordAndOffset.Type.END`, the read name is removed from the map with names of processed reads.

## Field Summary

### Fields inherited from class AbstractWgsMetricsCollector

`counter, coverageCap, highQualityDepthHistogramArray, intervals, unfilteredBaseQHistogramArray, unfilteredDepthHistogramArray`

## Constructor Summary

Constructors
Constructor
Description
`FastWgsMetricsCollector(CollectWgsMetrics collectWgsMetrics, int coverageCap, htsjdk.samtools.util.IntervalList intervals)`
Creates a collector and initializes the inner data structures

## Method Summary

Modifier and Type
Method
Description
`void`
`addInfo(htsjdk.samtools.util.AbstractLocusInfo<htsjdk.samtools.util.EdgingRecordAndOffset> info, htsjdk.samtools.reference.ReferenceSequence ref, boolean referenceBaseN)`
Accumulates the data from AbstractLocusInfo in inner structures

### Methods inherited from class AbstractWgsMetricsCollector

`addBaseQHistogram, addToMetricsFile, getHighQualityDepthHistogram, getHistogram, getMetrics, getUnfilteredBaseQHistogram, getUnfilteredDepthHistogram, setCounter`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### FastWgsMetricsCollector

public FastWgsMetricsCollector(CollectWgsMetrics collectWgsMetrics, int coverageCap, htsjdk.samtools.util.IntervalList intervals)
Creates a collector and initializes the inner data structures

Parameters:
  `collectWgsMetrics` - CollectWgsMetrics, that creates this collector
  `coverageCap` - coverage cap

## Method Details

### addInfo

public void addInfo(htsjdk.samtools.util.AbstractLocusInfo<htsjdk.samtools.util.EdgingRecordAndOffset> info, htsjdk.samtools.reference.ReferenceSequence ref, boolean referenceBaseN)
Description copied from class: `AbstractWgsMetricsCollector`
Accumulates the data from AbstractLocusInfo in inner structures

Specified by:
  `addInfo` in class `AbstractWgsMetricsCollector<htsjdk.samtools.util.EdgingRecordAndOffset>`
Parameters:
  `info` - `AbstractLocusInfo` with aligned to reference position reads
  `ref` - `ReferenceSequence`
  `referenceBaseN` - true if current the value of reference base represents a no call