Package picard.analysis.directed

## Class RnaSeqMetricsCollector.PerUnitRnaSeqMetricsCollector

- java.lang.Object
- - picard.analysis.directed.RnaSeqMetricsCollector.PerUnitRnaSeqMetricsCollector

- All Implemented Interfaces:
    `PerUnitMetricCollector<RnaSeqMetrics,​Integer,​htsjdk.samtools.SAMRecord>`
  Enclosing class:
    RnaSeqMetricsCollector

      protected class RnaSeqMetricsCollector.PerUnitRnaSeqMetricsCollector
      extends Object
      implements PerUnitMetricCollector<RnaSeqMetrics,​Integer,​htsjdk.samtools.SAMRecord>

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected RnaSeqMetrics` | `metrics` |

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `` | `PerUnitRnaSeqMetricsCollector​(String sample, String library, String readGroup, Long ribosomalBasesInitialValue)` |
    `protected` | `PerUnitRnaSeqMetricsCollector​(RnaSeqMetrics metrics, String sample, String library, String readGroup, Long ribosomalBasesInitialValue)` | Derived classes that need to capture some additional metrics can use this ctor to supply a metrics instance that is a subclass of RnaSeqMetrics.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `acceptRecord​(htsjdk.samtools.SAMRecord rec)` | Add a SAMRecord (with ReferenceSequence and Read Group info) to the metric(s) being calculated)
    `void` | `addMetricsToFile​(htsjdk.samtools.metrics.MetricsFile<RnaSeqMetrics,​Integer> file)` | Any metrics collected will be added to the metric file provided.
    `void` | `finish()` | When all records have been collected, compute any final values needed to finish constructing metrics/Histogram
    `protected Set<Gene>` | `getGenesForPickTranscripts()` | Derived class may override this method in order to return a different set of genes for picking transcripts for computing coverage, or to cache the value returned by geneOverlapDetector.getAll(), because it can be expensive to compute repeatedly.
    `protected int` | `getNumAlignedBases​(htsjdk.samtools.SAMRecord rec)` |
    `Map<Gene.Transcript,​int[]>` | `pickTranscripts​(Map<Gene.Transcript,​int[]> transcriptCoverage)` | Picks the set of transcripts on which the coverage metrics are to be calculated.

    - ### Methods inherited from class java.lang.Object

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

- - ### Field Detail

    - #### metrics

          protected final RnaSeqMetrics metrics

  - ### Constructor Detail

    - #### PerUnitRnaSeqMetricsCollector

          protected PerUnitRnaSeqMetricsCollector​(RnaSeqMetrics metrics,
                                                  String sample,
                                                  String library,
                                                  String readGroup,
                                                  Long ribosomalBasesInitialValue)

      Derived classes that need to capture some additional metrics can use this ctor to supply a metrics instance that is a subclass of RnaSeqMetrics.

    - #### PerUnitRnaSeqMetricsCollector

          public PerUnitRnaSeqMetricsCollector​(String sample,
                                               String library,
                                               String readGroup,
                                               Long ribosomalBasesInitialValue)

  - ### Method Detail

    - #### acceptRecord

          public void acceptRecord​(htsjdk.samtools.SAMRecord rec)

      Description copied from interface: `PerUnitMetricCollector`
      Add a SAMRecord (with ReferenceSequence and Read Group info) to the metric(s) being calculated)
      Specified by:
        `acceptRecord` in interface `PerUnitMetricCollector<RnaSeqMetrics,​Integer,​htsjdk.samtools.SAMRecord>`
      Parameters:
        `rec` - Contains SAMRecord, SAMReadGroupRecord, ReferenceSequence of current record and any previously computed values that might be needed for this class

    - #### getNumAlignedBases

          protected int getNumAlignedBases​(htsjdk.samtools.SAMRecord rec)

    - #### finish

          public void finish()

      Description copied from interface: `PerUnitMetricCollector`
      When all records have been collected, compute any final values needed to finish constructing metrics/Histogram
      Specified by:
        `finish` in interface `PerUnitMetricCollector<RnaSeqMetrics,​Integer,​htsjdk.samtools.SAMRecord>`

    - #### addMetricsToFile

          public void addMetricsToFile​(htsjdk.samtools.metrics.MetricsFile<RnaSeqMetrics,​Integer> file)

      Description copied from interface: `PerUnitMetricCollector`
      Any metrics collected will be added to the metric file provided.
      Specified by:
        `addMetricsToFile` in interface `PerUnitMetricCollector<RnaSeqMetrics,​Integer,​htsjdk.samtools.SAMRecord>`
      Parameters:
        `file` - MetricsFile to which all metrics created by this collector should be added

    - #### getGenesForPickTranscripts

          protected Set<Gene> getGenesForPickTranscripts()

      Derived class may override this method in order to return a different set of genes for picking transcripts for computing coverage, or to cache the value returned by geneOverlapDetector.getAll(), because it can be expensive to compute repeatedly.

    - #### pickTranscripts

          public Map<Gene.Transcript,​int[]> pickTranscripts​(Map<Gene.Transcript,​int[]> transcriptCoverage)

      Picks the set of transcripts on which the coverage metrics are to be calculated.