# Package picard.sam

- Interface Summary
  Interface | Description
  --- | ---
  PrimaryAlignmentSelectionStrategy | Given a set of alignments for a read or read pair, mark one alignment as primary, according to whatever strategy is appropriate.

- Class Summary
  Class | Description
  --- | ---
  AbstractAlignmentMerger | Abstract class that coordinates the general task of taking in a set of alignment information, possibly in SAM format, possibly in other formats, and merging that with the set of all reads for which alignment was attempted, stored in an unmapped SAM file.
  AddCommentsToBam | A tool to add comments to a BAM file header.
  AddOATag |
  AddOrReplaceReadGroups | Assigns all the reads in a file to a single new read-group.
  BamIndexStats | Command line program to print statistics from BAM index (.bai) file Statistics include count of aligned and unaligned reads for each reference sequence and a count of all records with no start coordinate.
  BestEndMapqPrimaryAlignmentStrategy | For an aligner that aligns each end independently, select the alignment for each end with the best MAPQ, and make that the primary.
  BestMapqPrimaryAlignmentSelectionStrategy | This strategy was designed for TopHat output, but could be of general utility.
  BuildBamIndex | Command line program to generate a BAM index (.bai) file from a BAM (.bam) file
  CalculateReadGroupChecksum |
  CheckTerminatorBlock | Simple class to check the terminator block of a SAM file.
  CleanSam |
  CompareSAMs | Rudimentary SAM comparer.
  CreateSequenceDictionary | Create a SAM/BAM file from a fasta containing reference sequence.
  CreateSequenceDictionary.CreateSeqDictReferenceArgumentCollection |
  DownsampleSam | Summary
  DuplicationMetrics | Metrics that are calculated during the process of marking duplicates within a stream of SAMRecords.
  EarliestFragmentPrimaryAlignmentSelectionStrategy | When it is necessary to pick a primary alignment from a group of alignments for a read, pick the one that maps the earliest base in the read.
  FastqToSam | Converts a FASTQ file to an unaligned BAM or SAM file.
  FilterSamReads | Summary
  FixMateInformation | Summary
  GatherBamFiles | Concatenate efficiently BAM files that resulted from a scattered parallel analysis.
  MergeBamAlignment | Summary
  MergeSamFiles | This tool is used for combining SAM and/or BAM files from different runs or read groups into a single file, similar to the \"merge\" function of Samtools (http://www.htslib.org/doc/samtools.html).
  MostDistantPrimaryAlignmentSelectionStrategy | For a paired-end aligner that aligns each end independently, select the pair of alignments that result in the largest insert size.
  PositionBasedDownsampleSam | Summary
  ReorderSam | Reorders a SAM/BAM input file according to the order of contigs in a second reference file.
  ReplaceSamHeader |
  RevertOriginalBaseQualitiesAndAddMateCigar | This tool reverts the original base qualities (if specified) and adds the mate cigar tag to mapped SAM, BAM or CRAM files.
  RevertSam | Reverts a SAM file by optionally restoring original quality scores and by removing all alignment information.
  SamAlignmentMerger | Class that takes in a set of alignment information in SAM format and merges it with the set of all reads for which alignment was attempted, stored in an unmapped SAM file.
  SamComparisonMetric | Metric for results of SamComparison.
  SamFormatConverter | Converts a BAM file to human-readable SAM output or vice versa
  SamToFastq | Extracts read sequences and qualities from the input SAM/BAM file and writes them into the output file in Sanger FASTQ format.
  SamToFastqWithTags | Extracts read sequences and qualities from the input SAM/BAM file and SAM/BAM tags and writes them into output files in Sanger FASTQ format.
  SetNmAndUqTags | Deprecated.
  SetNmMdAndUqTags | Fixes the NM, MD, and UQ tags in a SAM or BAM file.
  SortSam | Sorts a SAM or BAM file.
  SplitSamByLibrary | Command-line program to split a SAM/BAM/CRAM file into separate files based on library name.
  SplitSamByNumberOfReads | Splits the input queryname sorted or query-grouped SAM/BAM/CRAM file and writes it into multiple BAM files, each with an approximately equal number of reads.
  ValidateSamFile | This tool reports on the validity of a SAM or BAM file relative to the SAM format specification.
  ViewSam | Prints a SAM or BAM file to the screen.

- Enum Summary
  Enum | Description
  --- | ---
  AbstractAlignmentMerger.UnmappingReadStrategy |
  FilterSamReads.Filter |
  RevertOriginalBaseQualitiesAndAddMateCigar.CanSkipSamFile | Used as a return for the canSkipSAMFile function.
  RevertSam.FileType |
  ValidateSamFile.Mode |
  ViewSam.AlignmentStatus |
  ViewSam.PfStatus |