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
ConstructorsModifierConstructorDescriptionprotected
AbstractProgressLogger
(String noun, String verb, int n) Construct an AbstractProgressLogger. -
Method Summary
Modifier and TypeMethodDescriptionlong
getCount()
Returns the count of records processed.long
Returns the number of seconds since progress tracking began.boolean
log()
Logs the last last record if it wasn't previously logged.protected abstract void
Log a message to whatever logger is being usedboolean
Records that a given record has been processed and triggers logging if necessary.boolean
Records multiple SAMRecords and triggers logging if necessary.boolean
protected boolean
void
reset()
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:
record
in interfaceProgressLoggerInterface
-
record
Records that a given record has been processed and triggers logging if necessary.- Specified by:
record
in interfaceProgressLoggerInterface
- Returns:
- boolean true if logging was triggered, false otherwise
-
record
Records multiple SAMRecords and triggers logging if necessary.- Specified by:
record
in 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:
reset
in interfaceProgressLoggerInterface
-