public interface PipelineProgressListener
Monitor the progress of the pipelined comparator.
When a filter is run its progress is reported in terms of its location within a nested chain of input or output filters, where
the top-level chains are 'input-a', 'input-b', and 'result'. For example, the filter output location '
result/4-my-complex-chain/0-my-first-step
' illustrates that the 'my-first-step
' filter, is the first
filter of the 'my-complex-chain
' subchain, which is the fifth entry of the top-level 'result
' chain.
Note that this illustrates the string representation of the PipelineLocationEntry
object, which is returned with most
of the progress listener's callback messages.
In addition to reporting the progress of each filter the progress listener also reports other information including:
The progress listener presented here is incompatible with the previous 6.x version, due to the ability to have and represent a
hierarchy of filter steps (FilterStep
), through nested filter chains (FilterChain
).
Modifier and Type | Method and Description |
---|---|
void |
reportCompareFinish(long elapsedTimeNS,
long threadCPUTimeNS)
Reports when the comparison has completed.
|
void |
reportCompareHeartbeat()
Reports that progress has been made in the current comparison.
|
void |
reportCompareStart()
Reports when the comparison has started.
|
void |
reportFilterFinish(PipelineLocationEntry ple,
long elapsedTimeNS,
long threadCPUTimeNS)
Reports when a pipeline filter finishes.
|
void |
reportFilterOrSubchainSkipped(PipelineLocationEntry ple,
int numberOfStagesSkipped)
Reports when a pipeline filter or subchain is skipped.
|
void |
reportFilterStart(PipelineLocationEntry ple)
Reports when a pipeline filter starts.
|
void |
reportLoadFinish(PipelineLocationEntry ple,
long elapsedTimeNS,
long threadCPUTimeNS)
Reports when pipeline has been loaded.
|
void |
reportLoadStart(PipelineLocationEntry ple)
Reports when pipeline starts to load.
|
void |
reportNumberOfStages(int enabledStages)
Report the number of enabled stages.
|
void |
reportSaveFinish(long elapsedTimeNS,
long threadCPUTimeNS)
Reports when the output has been completed.
|
void |
reportSaveStart()
Reports when the output is starting to be written.
|
void |
reportSubchainEnter(PipelineLocationEntry ple)
Reports when a subchain within the pipeline is entered.
|
void |
reportSubchainExit(PipelineLocationEntry ple,
long elapsedTimeNS,
long threadCPUTimeNS)
Reports when a subchain within the pipeline is exited.
|
void reportNumberOfStages(int enabledStages)
Start
ed and Finish
ed. Note that all other progress report messages, such as those marking
when a subchain has been Enter
ed and Exit
ed or those marking when a disabled stage or chain has
been Skipped
, are not part of the enabled stage count.enabledStages
- The number of enabled stages.void reportSubchainEnter(PipelineLocationEntry ple)
ple
- The subchain's location within the pipeline.void reportSubchainExit(PipelineLocationEntry ple, long elapsedTimeNS, long threadCPUTimeNS)
ple
- The subchain's location within the pipeline.elapsedTimeNS
- The elapsed time taken to execute the subchain (in nanoseconds).threadCPUTimeNS
- The CPU time taken to execute this subchain (in nanoseconds).void reportFilterStart(PipelineLocationEntry ple)
ple
- The filter's location within the pipeline.void reportFilterFinish(PipelineLocationEntry ple, long elapsedTimeNS, long threadCPUTimeNS)
ple
- The filter's location within the pipeline.elapsedTimeNS
- The elapsed time taken to execute the filter (in nanoseconds).threadCPUTimeNS
- The CPU time taken to execute this filter (in nanoseconds).void reportFilterOrSubchainSkipped(PipelineLocationEntry ple, int numberOfStagesSkipped)
ple
- The filter or subchain's location within the pipeline.numberOfStagesSkipped
- The number of filter stages skipped.void reportLoadStart(PipelineLocationEntry ple)
ple
- The name of the pipeline; typically "input-a", "input-b", or "result".void reportLoadFinish(PipelineLocationEntry ple, long elapsedTimeNS, long threadCPUTimeNS)
ple
- The name of the pipeline; typically "input-a", "input-b", or "result".elapsedTimeNS
- The elapsed time taken to load a pipeline (in nanoseconds).threadCPUTimeNS
- The CPU time taken to load a pipeline (in nanoseconds).void reportSaveStart()
void reportSaveFinish(long elapsedTimeNS, long threadCPUTimeNS)
elapsedTimeNS
- The elapsed time taken to write the output (in nanoseconds).threadCPUTimeNS
- The CPU time taken to write the output (in nanoseconds).void reportCompareStart()
void reportCompareFinish(long elapsedTimeNS, long threadCPUTimeNS)
elapsedTimeNS
- The elapsed time taken to perform the comparison (in nanoseconds).threadCPUTimeNS
- The CPU time taken to perform the comparison (in nanoseconds).void reportCompareHeartbeat()
Notes: