Print

Print


Author: [log in to unmask]
Date: Tue Jan 20 14:12:41 2015
New Revision: 1959

Log:
Fix problem where banks were duplicated because parseEvent was called twice.  HPSJAVA-397

Modified:
    java/trunk/evio/src/main/java/org/hps/evio/EvioToLcio.java

Modified: java/trunk/evio/src/main/java/org/hps/evio/EvioToLcio.java
 =============================================================================
--- java/trunk/evio/src/main/java/org/hps/evio/EvioToLcio.java	(original)
+++ java/trunk/evio/src/main/java/org/hps/evio/EvioToLcio.java	Tue Jan 20 14:12:41 2015
@@ -352,9 +352,10 @@
                     EvioEvent evioEvent = null;
                     try {
                         eventQueue.next();
-                        evioEvent = (EvioEvent) eventQueue.getCurrentRecord();                        
-                        reader.parseEvent(evioEvent);
-                    } catch (IOException | EvioException e) {
+                        evioEvent = (EvioEvent) eventQueue.getCurrentRecord();         
+                        // The parseEvent method does not need to be called here.
+                        // The events were already parsed when buffering.                        
+                    } catch (IOException e) {
                         // This means the EVIO event has bad data.  
                         logger.severe(e.getMessage());
                         e.printStackTrace();
@@ -418,7 +419,7 @@
                             throw new RuntimeException("The LCSimEventBuilder was never initialized.");
                         }
 
-                        // Build the LCIO event.
+                        // Build the LCIO event.                        
                         EventHeader lcioEvent = eventBuilder.makeLCSimEvent(evioEvent);
                         eventTime = (lcioEvent.getTimeStamp() / 1000000);                           
                         logger.finest("created LCIO event #" + lcioEvent.getEventNumber() + " with time " + new Date(eventTime));
@@ -428,6 +429,7 @@
                         }
 
                         // Activate Driver process methods.
+                        logger.finest("jobManager processing event " + lcioEvent.getEventNumber());
                         jobManager.processEvent(lcioEvent);
 
                         // Write out this LCIO event.