Package picard.sam

## Class SamFormatConverter

- java.lang.Object
- - picard.cmdline.CommandLineProgram
  - - picard.sam.SamFormatConverter

-     @DocumentedFeature
      public class SamFormatConverter
      extends CommandLineProgram

  Converts a BAM file to human-readable SAM output or vice versa

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `File` | `INPUT` |
    `File` | `OUTPUT` |

    - ### Fields inherited from class picard.cmdline.CommandLineProgram

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

  - ### Constructor Summary

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

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | `convert​(File input, File output, File referenceSequence, Boolean createIndex)` | Convert a file from one of sam/bam/cram format to another based on the extension of output.
    `protected int` | `doWork()` | Do the work after command line has been parsed.

    - ### Methods inherited from class picard.cmdline.CommandLineProgram

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

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

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

- - ### Field Detail

    - #### INPUT

          @Argument(doc="The SAM/BAM/CRAM file to parse.",
                    shortName="I")
          public File INPUT

    - #### OUTPUT

          @Argument(doc="The SAM/BAM/CRAM output file. ",
                    shortName="O")
          public File OUTPUT

  - ### Constructor Detail

    - #### SamFormatConverter

          public SamFormatConverter()

  - ### Method Detail

    - #### doWork

          protected int doWork()

      Description copied from class: `CommandLineProgram`
      Do the work after command line has been parsed. RuntimeException may be thrown by this method, and are reported appropriately.
      Specified by:
        `doWork` in class `CommandLineProgram`
      Returns:
        program exit status.

    - #### convert

          public static void convert​(File input,
                                     File output,
                                     File referenceSequence,
                                     Boolean createIndex)

      Convert a file from one of sam/bam/cram format to another based on the extension of output.
      Parameters:
        `input` - input file in one of sam/bam/cram format
        `output` - output to write converted file to, the conversion is based on the extension of this filename
        `referenceSequence` - the reference sequence to use, necessary when reading/writing cram
        `createIndex` - whether or not an index should be written alongside the output file