# Class CollectTargetedPcrMetrics

java.lang.Object
picard.cmdline.CommandLineProgram
picard.analysis.directed.CollectTargetedMetrics<TargetedPcrMetrics, TargetedPcrMetricsCollector>
picard.analysis.directed.CollectTargetedPcrMetrics

@DocumentedFeature public class CollectTargetedPcrMetrics extends CollectTargetedMetrics<TargetedPcrMetrics, TargetedPcrMetricsCollector>

This tool calculates a set of PCR-related metrics from an aligned SAM or BAM file containing targeted sequencing data. It is appropriate for data produced with multiple small-target technologies including exome sequencing an custom amplicon panels such as the Illumina " + TruSeq Custom Amplicon (TSCA) kit.

If a reference sequence is provided, AT/GC dropout metrics will be calculated and the PER_TARGET_COVERAGE option can be used to output GC content and mean coverage information for each target. The AT/GC dropout metrics indicate the degree of inadequate coverage of a particular region based on its AT or GC content. The PER_TARGET_COVERAGE option can be used to output GC content and mean sequence depth information for every target interval.

Note: Metrics labeled as percentages are actually expressed as fractions!

#### Usage Example

    java -jar picard.jar CollectTargetedPcrMetrics \\

         I=input.bam \\

         O=output_pcr_metrics.txt \\

         R=reference.fasta \\

         AMPLICON_INTERVALS=amplicon.interval_list \\

         TARGET_INTERVALS=targets.interval_list

Please see the metrics definitions page on `TargetedPcrMetrics` for detailed explanations of the output metrics produced by this tool.

Collect metric information for target pcr metrics runs. See `CollectTargetedMetrics` and `TargetedPcrMetricsCollector` for more information

## Field Summary

Fields
Modifier and Type
Field
Description
`File`
`AMPLICON_INTERVALS`
`String`
`CUSTOM_AMPLICON_SET_NAME`

### Fields inherited from class CollectTargetedMetrics

`ALLELE_FRACTION, CLIP_OVERLAPPING_READS, COVERAGE_CAP, INCLUDE_INDELS, INPUT, METRIC_ACCUMULATION_LEVEL, MINIMUM_BASE_QUALITY, MINIMUM_MAPPING_QUALITY, NEAR_DISTANCE, OUTPUT, PER_BASE_COVERAGE, PER_TARGET_COVERAGE, SAMPLE_SIZE, TARGET_INTERVALS, THEORETICAL_SENSITIVITY_OUTPUT`

### Fields inherited from class CommandLineProgram

`COMPRESSION_LEVEL, CREATE_INDEX, CREATE_MD5_FILE, MAX_ALLOWABLE_ONE_LINE_SUMMARY_LENGTH, MAX_RECORDS_IN_RAM, QUIET, REFERENCE_SEQUENCE, referenceSequence, specialArgumentsCollection, SYNTAX_TRANSITION_URL, TMP_DIR, USE_JDK_DEFLATER, USE_JDK_INFLATER, VALIDATION_STRINGENCY, VERBOSITY`

## Constructor Summary

Constructors
Constructor
Description
`CollectTargetedPcrMetrics()`

## Method Summary

Modifier and Type
Method
Description
`protected htsjdk.samtools.util.IntervalList`
`getProbeIntervals()`
`protected String`
`getProbeSetName()`
`protected TargetedPcrMetricsCollector`
`makeCollector(Set<MetricAccumulationLevel> accumulationLevels, List<htsjdk.samtools.SAMReadGroupRecord> samRgRecords, htsjdk.samtools.reference.ReferenceSequenceFile refFile, File perTargetCoverage, File perBaseCoverage, htsjdk.samtools.util.IntervalList targetIntervals, htsjdk.samtools.util.IntervalList probeIntervals, String probeSetName, int nearProbeDistance)`
A factory method for the TargetMetricsCollector to use this time.

### Methods inherited from class CollectTargetedMetrics

`customCommandLineValidation, doWork`

### Methods inherited from class CommandLineProgram

`checkRInstallation, getCommandLine, getCommandLineParser, getCommandLineParserForArgs, getDefaultHeaders, getFaqLink, getMetricsFile, getPGRecord, getStandardUsagePreamble, getStandardUsagePreamble, getVersion, hasWebDocumentation, instanceMain, instanceMainWithExit, makeReferenceArgumentCollection, parseArgs, requiresReference, setDefaultHeaders, useLegacyParser`

### Methods inherited from class Object

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

## Field Details

### AMPLICON_INTERVALS

@Argument(shortName="AI", doc="An interval list file that contains the locations of the baits used.") public File AMPLICON_INTERVALS

### CUSTOM_AMPLICON_SET_NAME

@Argument(shortName="N", doc="Custom amplicon set name. If not provided it is inferred from the filename of the AMPLICON_INTERVALS intervals.", optional=true) public String CUSTOM_AMPLICON_SET_NAME

## Constructor Details

### CollectTargetedPcrMetrics

public CollectTargetedPcrMetrics()

## Method Details

### getProbeIntervals

protected htsjdk.samtools.util.IntervalList getProbeIntervals()

Specified by:
  `getProbeIntervals` in class `CollectTargetedMetrics<TargetedPcrMetrics, TargetedPcrMetricsCollector>`
Returns:
  AMPLICON_INTERVALS

### getProbeSetName

protected String getProbeSetName()

Specified by:
  `getProbeSetName` in class `CollectTargetedMetrics<TargetedPcrMetrics, TargetedPcrMetricsCollector>`
Returns:
  CUSTOM_AMPLICON_SET_NAME

### makeCollector

protected TargetedPcrMetricsCollector makeCollector(Set<MetricAccumulationLevel> accumulationLevels, List<htsjdk.samtools.SAMReadGroupRecord> samRgRecords, htsjdk.samtools.reference.ReferenceSequenceFile refFile, File perTargetCoverage, File perBaseCoverage, htsjdk.samtools.util.IntervalList targetIntervals, htsjdk.samtools.util.IntervalList probeIntervals, String probeSetName, int nearProbeDistance)
Description copied from class: `CollectTargetedMetrics`
A factory method for the TargetMetricsCollector to use this time. Examples of TargetMetricsCollector: (TargetedPcrMetricsCollector, HsMetricsCalculator)

Specified by:
  `makeCollector` in class `CollectTargetedMetrics<TargetedPcrMetrics, TargetedPcrMetricsCollector>`
Returns:
  A TargetMetricsCollector to which we will pass SAMRecords