Skip to content

Commit daa19da

Browse files
committed
breakout methods
1 parent d1f5f24 commit daa19da

File tree

1 file changed

+22
-31
lines changed

1 file changed

+22
-31
lines changed

common-tools/clas-reco/src/main/java/org/jlab/clas/reco/EngineProcessor.java

Lines changed: 22 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -284,52 +284,43 @@ public void processFile(String file, String output){
284284
this.processFile(file, output, -1, -1);
285285
}
286286

287+
public void processFile(HipoDataSource reader, HipoDataSync writer, int skipEvents, int maxEvents) {
288+
if (updateDictionary==true) updateDictionary(reader, writer);
289+
ProgressPrintout progress = new ProgressPrintout();
290+
int eventsRead = 0;
291+
while (reader.hasEvent()) {
292+
DataEvent event = reader.getNextEvent();
293+
eventsRead++;
294+
if (skipEvents <= 0 || eventsRead > skipEvents) {
295+
processEvent(event);
296+
removeBanks(event);
297+
writer.writeEvent(event);
298+
}
299+
if (maxEvents > 0 && eventsRead > maxEvents+skipEvents) break;
300+
progress.updateStatus();
301+
}
302+
progress.showStatus();
303+
writer.close();
304+
}
305+
287306
/**
288307
* process entire file through engine chain.
289308
* @param file input file name to process
290309
* @param output output filename
291310
* @param nskip number of events to skip
292311
* @param nevents number of events to process
293312
*/
294-
public void processFile(String file, String output, int nskip, int nevents){
313+
public void processFile(String file, String output, int nskip, int nevents) {
295314
if(file.endsWith(".hipo") || file.endsWith(".h5") || file.endsWith(".h4")) {
296315
HipoDataSource reader = new HipoDataSource();
297316
reader.open(file);
298-
299-
int eventCounter = 0;
300-
HipoDataSync writer = new HipoDataSync();
317+
HipoDataSync writer = new HipoDataSync();
301318
writer.setCompressionType(2);
302-
303319
writer.open(output);
304-
305-
if(updateDictionary==true)
306-
updateDictionary(reader, writer);
307-
308-
if(nskip>0 && nevents>0) nevents += nskip;
309-
310-
ProgressPrintout progress = new ProgressPrintout();
311-
while(reader.hasEvent()==true){
312-
DataEvent event = reader.getNextEvent();
313-
if(nskip<=0 || eventCounter>nskip) {
314-
processEvent(event);
315-
316-
// this works:
317-
removeBanks(event);
318-
319-
writer.writeEvent(event);
320-
}
321-
eventCounter++;
322-
if(nevents>0){
323-
if(eventCounter>nevents) break;
324-
}
325-
progress.updateStatus();
326-
}
327-
progress.showStatus();
328-
writer.close();
320+
processFile(reader, writer, nskip, nevents);
329321
} else {
330322
LOGGER.info("\n\n>>>> error in file extension (use .hipo,.h4 or .h5)\n>>>> how is this not simple ?\n");
331323
}
332-
333324
}
334325

335326
/**

0 commit comments

Comments
 (0)