Package picard.sam

## Class SamComparisonMetric

- java.lang.Object
- - htsjdk.samtools.metrics.MetricBase
  - - picard.sam.SamComparisonMetric

-     public class SamComparisonMetric
      extends htsjdk.samtools.metrics.MetricBase

  Metric for results of SamComparison. Used to store results in CompareSAMs.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `boolean` | `ARE_EQUAL` | Whether or not to consider the two input files equal.
    `int` | `DUPLICATE_MARKINGS_DIFFER` | The number of primary records for which duplicate markings are different.
    `String` | `LEFT_FILE` | Left file used in comparison
    `int` | `MAPPINGS_DIFFER` | The number of primary records which are mapped in both files but do not meet criteria to be counted in MAPPINGS_MATCH.
    `int` | `MAPPINGS_MATCH` | The number of primary records for which mappings match in files.
    `int` | `MISSING_LEFT` | The number of primary records which are found in right file but not found in left file
    `int` | `MISSING_RIGHT` | The number of primary records which are found in left file but not found in right file
    `String` | `RIGHT_FILE` | Right file used in comparison
    `int` | `UNMAPPED_BOTH` | The number of primary records which are not mapped in either file.
    `int` | `UNMAPPED_LEFT` | The number of primary records which are mapped in right file and found but not mapped in left file
    `int` | `UNMAPPED_RIGHT` | The number of primary records which are mapped in left file and found but not mapped in right file

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SamComparisonMetric()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `allVisitedAlignmentsEqual()` |
    `void` | `updateMetric​(SamComparison.AlignmentComparison comp)` |

    - ### Methods inherited from class htsjdk.samtools.metrics.MetricBase

      `equals, hashCode, toString`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### LEFT_FILE

          public String LEFT_FILE

      Left file used in comparison

    - #### RIGHT_FILE

          public String RIGHT_FILE

      Right file used in comparison

    - #### MAPPINGS_MATCH

          public int MAPPINGS_MATCH

      The number of primary records for which mappings match in files. If running in strict alignment mode, this counts only records which are mapped in both files with the same alignment start positions and strands. If running with LENIENT_LOW_MQ_ALIGNMENT=true, then all records which are mapped in both files with mapping quality at most equal to LOW_MQ_THRESHOLD are counted as matching. If running with LENIENT_255_MQ_ALIGNMENT=true, all records which are mapped in both files with mapping quality 255 are counted as matches.

    - #### MAPPINGS_DIFFER

          public int MAPPINGS_DIFFER

      The number of primary records which are mapped in both files but do not meet criteria to be counted in MAPPINGS_MATCH.

    - #### UNMAPPED_BOTH

          public int UNMAPPED_BOTH

      The number of primary records which are not mapped in either file.

    - #### UNMAPPED_LEFT

          public int UNMAPPED_LEFT

      The number of primary records which are mapped in right file and found but not mapped in left file

    - #### UNMAPPED_RIGHT

          public int UNMAPPED_RIGHT

      The number of primary records which are mapped in left file and found but not mapped in right file

    - #### MISSING_LEFT

          public int MISSING_LEFT

      The number of primary records which are found in right file but not found in left file

    - #### MISSING_RIGHT

          public int MISSING_RIGHT

      The number of primary records which are found in left file but not found in right file

    - #### DUPLICATE_MARKINGS_DIFFER

          public int DUPLICATE_MARKINGS_DIFFER

      The number of primary records for which duplicate markings are different. If running in strict duplicate marking mode, any primary alignment which is marked as a duplicate in one file but not in the other will be counted. If running with LENIENT_DUP=true, we allow for swaps between duplicate and non-duplicate fragments in the same duplicate set to reduce the number of fragments with different duplicate marking. Note that this metric is counted on a per read basis, so a paired end fragment which differs in duplicate marking between the two files will increment this metric by 2.

    - #### ARE_EQUAL

          public boolean ARE_EQUAL

      Whether or not to consider the two input files equal. The two input files are considered equal iff MAPPINGS_DIFFER == UNMAPPED_LEFT == UNMAPPED_RIGHT == MISSING_LEFT == MISSING_RIGHT == DUPLICATE_MARKINGS_DIFFER == 0 && the headers have been compared to be equal. Note that the header comparison result can be dependent on whether the tool is run with LENIENT_HEADER true or false.

  - ### Constructor Detail

    - #### SamComparisonMetric

          public SamComparisonMetric()

  - ### Method Detail

    - #### allVisitedAlignmentsEqual

          public boolean allVisitedAlignmentsEqual()

    - #### updateMetric

          public void updateMetric​(SamComparison.AlignmentComparison comp)