View Javadoc

1   package org.lcsim.job;
2   
3   import org.lcsim.event.EventHeader;
4   import org.lcsim.util.Driver;
5   
6   /**
7    * Driver to print markers during event processing.
8    * 
9    * @author Jeremy McCormick <jeremym@slac.stanford.edu>
10   * @deprecated Use built-in command line option of {@link JobManager} instead.
11   */
12  @Deprecated
13  public class EventMarkerDriver extends Driver {
14  
15      private int interval = 1;
16      private String marker = "";
17      private int nEvents;
18  
19      public EventMarkerDriver() {
20      }
21  
22      public EventMarkerDriver(int interval) {
23          this.interval = interval;
24      }
25  
26      public void setMarker(String marker) {
27          this.marker = marker;
28      }
29  
30      public void setEventInterval(int interval) {
31          this.interval = interval;
32      }
33  
34      protected void process(EventHeader event) {
35          if (nEvents % interval == 0) {
36              getLogger().info(marker + "Event " + event.getEventNumber() + " with sequence " + nEvents);
37          }
38          nEvents++;
39      }
40  
41      protected void endOfData() {
42          getLogger().info(nEvents + " events processed in job.");
43      }
44  }