Package picard.analysis
Class SinglePassSamProgram
java.lang.Object
picard.cmdline.CommandLineProgram
picard.analysis.SinglePassSamProgram
- Direct Known Subclasses:
CollectAlignmentSummaryMetrics
,CollectBaseDistributionByCycle
,CollectDuplicateMetrics
,CollectGcBiasMetrics
,CollectInsertSizeMetrics
,CollectQualityYieldMetrics
,CollectRnaSeqMetrics
,CollectSequencingArtifactMetrics
,MeanQualityByCycle
,QualityScoreDistribution
Super class that is designed to provide some consistent structure between subclasses that
simply iterate once over a coordinate sorted BAM and collect information from the records
as the go in order to produce some kind of output.
-
Field Summary
FieldsFields inherited from class picard.cmdline.CommandLineProgram
COMPRESSION_LEVEL, CREATE_INDEX, CREATE_MD5_FILE, MAX_ALLOWABLE_ONE_LINE_SUMMARY_LENGTH, MAX_RECORDS_IN_RAM, QUIET, REFERENCE_SEQUENCE, referenceSequence, specialArgumentsCollection, SYNTAX_TRANSITION_URL, TMP_DIR, USE_JDK_DEFLATER, USE_JDK_INFLATER, VALIDATION_STRINGENCY, VERBOSITY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract void
acceptRead
(htsjdk.samtools.SAMRecord rec, htsjdk.samtools.reference.ReferenceSequence ref) Should be implemented by subclasses to accept SAMRecords one at a time.protected final int
doWork()
Final implementation of doWork() that checks and loads the input and optionally reference sequence files and the runs the sublcass through the setup() acceptRead() and finish() steps.protected abstract void
finish()
Should be implemented by subclasses to do one-time finalization work.protected OutputArgumentCollection
static void
makeItSo
(File input, File referenceSequence, boolean assumeSorted, long stopAfter, Collection<SinglePassSamProgram> programs) void
setReferenceSequence
(File referenceFile) Set the reference File.protected abstract void
Should be implemented by subclasses to do one-time initialization work.protected boolean
Can be overridden and set to false if the section of unmapped reads at the end of the file isn't needed.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
-
Field Details
-
INPUT
-
output
-
OUTPUT
-
ASSUME_SORTED
@Argument(doc="If true (default), then the sort order in the header file will be ignored.", shortName="AS") public boolean ASSUME_SORTED -
STOP_AFTER
@Argument(doc="Stop after processing N reads, mainly for debugging.") public long STOP_AFTER
-
-
Constructor Details
-
SinglePassSamProgram
public SinglePassSamProgram()
-
-
Method Details
-
getOutputArgumentCollection
-
setReferenceSequence
Set the reference File. -
doWork
protected final int doWork()Final implementation of doWork() that checks and loads the input and optionally reference sequence files and the runs the sublcass through the setup() acceptRead() and finish() steps.- Specified by:
doWork
in classCommandLineProgram
- Returns:
- program exit status.
-
makeItSo
public static void makeItSo(File input, File referenceSequence, boolean assumeSorted, long stopAfter, Collection<SinglePassSamProgram> programs) -
usesNoRefReads
protected boolean usesNoRefReads()Can be overridden and set to false if the section of unmapped reads at the end of the file isn't needed. -
setup
Should be implemented by subclasses to do one-time initialization work. -
acceptRead
protected abstract void acceptRead(htsjdk.samtools.SAMRecord rec, htsjdk.samtools.reference.ReferenceSequence ref) Should be implemented by subclasses to accept SAMRecords one at a time. If the read has a reference sequence and a reference sequence file was supplied to the program it will be passed as 'ref'. Otherwise 'ref' may be null. -
finish
protected abstract void finish()Should be implemented by subclasses to do one-time finalization work.
-