Package htsjdk.samtools.util
Class AbstractProgressLogger
java.lang.Object
htsjdk.samtools.util.AbstractProgressLogger
- All Implemented Interfaces:
ProgressLoggerInterface
- Direct Known Subclasses:
ProgressLogger
Abstract implementation of a Little progress logging class to facilitate consistent output of useful information when progressing
through a stream of SAM records.
Concrete subclasses must provide the logger
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractProgressLogger(String noun, String verb, int n) Construct an AbstractProgressLogger. -
Method Summary
Modifier and TypeMethodDescriptionlonggetCount()Returns the count of records processed.longReturns the number of seconds since progress tracking began.booleanlog()Logs the last last record if it wasn't previously logged.protected abstract voidLog a message to whatever logger is being usedbooleanRecords that a given record has been processed and triggers logging if necessary.booleanRecords multiple SAMRecords and triggers logging if necessary.booleanprotected booleanvoidreset()Resets the start time to now and the number of records to zero.
-
Constructor Details
-
AbstractProgressLogger
Construct an AbstractProgressLogger. This must be called by any subclasses- Parameters:
n- the frequency with which to output (i.e. every N records)verb- the verb to log, e.g. "Processed, Read, Written".noun- the noun to use when logging, e.g. "Records, Variants, Loci"
-
-
Method Details
-
log
Log a message to whatever logger is being used- Parameters:
message- a message to be logged by the logger (recommended output level is INFO or the equivalent)
-
log
public boolean log()Logs the last last record if it wasn't previously logged.- Returns:
- boolean true if logging was triggered, false otherwise
-
record
-
record
- Specified by:
recordin interfaceProgressLoggerInterface
-
record
Records that a given record has been processed and triggers logging if necessary.- Specified by:
recordin interfaceProgressLoggerInterface- Returns:
- boolean true if logging was triggered, false otherwise
-
record
Records multiple SAMRecords and triggers logging if necessary.- Specified by:
recordin interfaceProgressLoggerInterface
-
getCount
public long getCount()Returns the count of records processed. -
getElapsedSeconds
public long getElapsedSeconds()Returns the number of seconds since progress tracking began. -
reset
public void reset()Resets the start time to now and the number of records to zero.- Specified by:
resetin interfaceProgressLoggerInterface
-