Class CollectMultipleMetrics

java.lang.Object
picard.cmdline.CommandLineProgram
picard.analysis.CollectMultipleMetrics

@DocumentedFeature public class CollectMultipleMetrics extends CommandLineProgram
Class that is designed to instantiate and execute multiple metrics programs that extend SinglePassSamProgram while making only a single pass through the SAM file and supplying each program with the records as it goes.
  • Field Details

    • INPUT

      @Argument(shortName="I", doc="Input SAM or BAM file.") public File INPUT
    • ASSUME_SORTED

      @Argument(shortName="AS", doc="If true (default), then the sort order in the header file will be ignored.") public boolean ASSUME_SORTED
    • STOP_AFTER

      @Argument(doc="Stop after processing N reads, mainly for debugging.") public int STOP_AFTER
    • OUTPUT

      @Argument(shortName="O", doc="Base name of output files.") public String OUTPUT
    • METRIC_ACCUMULATION_LEVEL

      @Argument(shortName="LEVEL", doc="The level(s) at which to accumulate metrics.") public Set<MetricAccumulationLevel> METRIC_ACCUMULATION_LEVEL
    • FILE_EXTENSION

      @Argument(shortName="EXT", doc="Append the given file extension to all metric file names (ex. OUTPUT.insert_size_metrics.EXT). None if null", optional=true) public String FILE_EXTENSION
    • PROGRAM

      @Argument(doc="Set of metrics programs to apply during the pass through the SAM file.") public Set<CollectMultipleMetrics.Program> PROGRAM
    • INTERVALS

      @Argument(doc="An optional list of intervals to restrict analysis to. Only pertains to some of the PROGRAMs. Programs whose stand-alone CLP does not have an INTERVALS argument will silently ignore this argument.", optional=true) public File INTERVALS
    • DB_SNP

      @Argument(doc="VCF format dbSNP file, used to exclude regions around known polymorphisms from analysis by some PROGRAMs; PROGRAMs whose CLP doesn\'t allow for this argument will quietly ignore it.", optional=true) public File DB_SNP
    • REF_FLAT

      @Argument(doc="Gene annotations in refFlat form. Format described here: http://genome.ucsc.edu/goldenPath/gbdDescriptionsOld.html#RefFlat", optional=true) public File REF_FLAT
    • IGNORE_SEQUENCE

      @Argument(doc="If a read maps to a sequence specified with this option, all the bases in the read are counted as ignored bases.", optional=true) public Set<String> IGNORE_SEQUENCE
    • INCLUDE_UNPAIRED

      @Argument(shortName="UNPAIRED", doc="Include unpaired reads in CollectSequencingArtifactMetrics. If set to true then all paired reads will be included as well - MINIMUM_INSERT_SIZE and MAXIMUM_INSERT_SIZE will be ignored in CollectSequencingArtifactMetrics.") public boolean INCLUDE_UNPAIRED
    • EXTRA_ARGUMENT

      @Argument(doc="extra arguments to the various tools can be specified using the following format:<PROGRAM>::<ARGUMENT_AND_VALUE> where <PROGRAM> is one of the programs specified in PROGRAM, and <ARGUMENT_AND_VALUE> are the argument and value that you\'d like to specify as you would on the command line. For example, to change the HISTOGRAM_WIDTH in CollectInsertSizeMetrics to 200, use:\n \"EXTRA_ARGUMENT=CollectInsertSizeMetrics::HISTOGRAM_WIDTH=200\"\n or, in the new parser:--EXTRA_ARGUMENT \"CollectInsertSizeMetrics::--HISTOGRAM_WIDTH 200\"\n (Quotes are required to avoid the shell from separating this into two arguments.) Note that the following arguments cannot be modified on a per-program level: INPUT, REFERENCE_SEQUENCE, ASSUME_SORTED, and STOP_AFTER. Providing them in an EXTRA_ARGUMENT will _not_ result in an error, but they will be silently ignored. ", optional=true) public List<String> EXTRA_ARGUMENT
  • Constructor Details

    • CollectMultipleMetrics

      public CollectMultipleMetrics()
  • Method Details

    • customCommandLineValidation

      protected String[] customCommandLineValidation()
      Description copied from class: CommandLineProgram
      Put any custom command-line validation in an override of this method. clp is initialized at this point and can be used to print usage and access argv. Any options set by command-line parser can be validated.
      Overrides:
      customCommandLineValidation in class CommandLineProgram
      Returns:
      null if command line is valid. If command line is invalid, returns an array of error message to be written to the appropriate place.
    • setProgramsToRun

      public void setProgramsToRun(Collection<CollectMultipleMetrics.ProgramInterface> programsToRun)
      Use this method when invoking CollectMultipleMetrics programmatically to run programs other than the ones available via enum. This must be called before doWork().
    • doWork

      public 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.