Author: [log in to unmask]
Date: Wed May 27 12:39:44 2015
New Revision: 3035
Log:
Minor cleanup and add loggers (not used much yet).
Modified:
java/trunk/evio/src/main/java/org/hps/evio/EcalEvioReader.java
java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java
Modified: java/trunk/evio/src/main/java/org/hps/evio/EcalEvioReader.java
=============================================================================
--- java/trunk/evio/src/main/java/org/hps/evio/EcalEvioReader.java (original)
+++ java/trunk/evio/src/main/java/org/hps/evio/EcalEvioReader.java Wed May 27 12:39:44 2015
@@ -39,6 +39,7 @@
* @author Sho Uemura <[log in to unmask]>
* @version $Id: ECalEvioReader.java,v 1.23 2013/04/18 20:59:16 meeg Exp $
*/
+// TODO: use a logger
public class EcalEvioReader extends EvioReader {
// Names of subdetectors.
Modified: java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java
=============================================================================
--- java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java (original)
+++ java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java Wed May 27 12:39:44 2015
@@ -7,39 +7,39 @@
import org.hps.recon.ecal.triggerbank.AbstractIntData;
import org.hps.recon.ecal.triggerbank.SSPData;
+import org.hps.recon.ecal.triggerbank.TDCData;
import org.hps.recon.ecal.triggerbank.TIData;
-import org.hps.recon.ecal.triggerbank.TDCData;
+import org.hps.record.epics.EpicsData;
import org.hps.record.epics.EpicsEvioProcessor;
-import org.hps.record.epics.EpicsData;
import org.hps.record.evio.EvioEventUtilities;
-import org.hps.record.scalars.ScalarData;
import org.hps.record.scalars.ScalarsEvioProcessor;
import org.jlab.coda.jevio.EvioEvent;
import org.lcsim.event.EventHeader;
+import org.lcsim.util.log.DefaultLogFormatter;
+import org.lcsim.util.log.LogUtil;
/**
- * This is the {@link org.hps.record.LCSimEventBuilder} implementation for the
- * Engineering Run and the Commissioning Run.
+ * This is the {@link org.hps.record.LCSimEventBuilder} implementation for the Engineering Run and the Commissioning Run.
* <p>
- * It has several modifications from the Test Run builder including different
- * values for certain bank tags.
+ * It has several modifications from the Test Run builder including different values for certain bank tags.
* <p>
- * Additionally, this builder will write DAQ config information, EPICS control
- * data, and scalar bank data into the output LCSim events if these banks are
- * present in the EVIO data.
+ * Additionally, this builder will write DAQ config information, EPICS control data, and scalar bank data into the output LCSim events if these banks
+ * are present in the EVIO data.
*
* @author Sho Uemura <[log in to unmask]>
* @author Jeremy McCormick <[log in to unmask]>
*/
public class LCSimEngRunEventBuilder extends LCSimTestRunEventBuilder {
- TriggerConfigEvioReader triggerConfigReader = null;
+ private static final Logger LOGGER = LogUtil.create(LCSimEngRunEventBuilder.class, new DefaultLogFormatter(), Level.ALL);
- EpicsEvioProcessor epicsProcessor = new EpicsEvioProcessor();
- EpicsData epicsData;
+ private EpicsData epicsData;
- ScalarsEvioProcessor scalarProcessor = new ScalarsEvioProcessor();
- ScalarData scalarData;
+ private final EpicsEvioProcessor epicsProcessor = new EpicsEvioProcessor();
+
+ private final ScalarsEvioProcessor scalarProcessor = new ScalarsEvioProcessor();
+
+ private TriggerConfigEvioReader triggerConfigReader = null;
public LCSimEngRunEventBuilder() {
ecalReader.setTopBankTag(0x25);
@@ -49,18 +49,28 @@
sspCrateBankTag = 0x2E; // A.C. modification after Sergey's confirmation
sspBankTag = 0xe10c;
intBanks = new ArrayList<IntBankDefinition>();
- intBanks.add(new IntBankDefinition(SSPData.class, new int[]{sspCrateBankTag, sspBankTag}));
- intBanks.add(new IntBankDefinition(TIData.class, new int[]{sspCrateBankTag, 0xe10a}));
- intBanks.add(new IntBankDefinition(TDCData.class, new int[]{0x3a, 0xe107}));
+ intBanks.add(new IntBankDefinition(SSPData.class, new int[] {sspCrateBankTag, sspBankTag}));
+ intBanks.add(new IntBankDefinition(TIData.class, new int[] {sspCrateBankTag, 0xe10a}));
+ intBanks.add(new IntBankDefinition(TDCData.class, new int[] {0x3a, 0xe107}));
// ecalReader = new ECalEvioReader(0x25, 0x27);
triggerConfigReader = new TriggerConfigEvioReader();
}
+ /**
+ * Create and cache an {@link org.hps.record.epics.EpicsData} object.
+ *
+ * @param evioEvent The EVIO event data.
+ */
+ void createEpicsData(final EvioEvent evioEvent) {
+ epicsProcessor.process(evioEvent);
+ epicsData = epicsProcessor.getEpicsData();
+ }
+
@Override
- protected long getTime(List<AbstractIntData> triggerList) {
- for (AbstractIntData data : triggerList) {
+ protected long getTime(final List<AbstractIntData> triggerList) {
+ for (final AbstractIntData data : triggerList) {
if (data instanceof TIData) {
- TIData tiData = (TIData) data;
+ final TIData tiData = (TIData) data;
return tiData.getTime();
}
}
@@ -68,23 +78,53 @@
}
@Override
- public void readEvioEvent(EvioEvent evioEvent) {
+ public EventHeader makeLCSimEvent(final EvioEvent evioEvent) {
+ if (!EvioEventUtilities.isPhysicsEvent(evioEvent)) {
+ throw new RuntimeException("Not a physics event: event tag " + evioEvent.getHeader().getTag());
+ }
+
+ // Create a new LCSimEvent.
+ final EventHeader lcsimEvent = this.getEventData(evioEvent);
+
+ // Put DAQ Configuration info into lcsimEvent.
+ triggerConfigReader.getDAQConfig(evioEvent, lcsimEvent);
+
+ // Make RawCalorimeterHit collection, combining top and bottom section
+ // of ECal into one list.
+ try {
+ ecalReader.makeHits(evioEvent, lcsimEvent);
+ } catch (final Exception e) {
+ LOGGER.log(Level.SEVERE, "Error making ECal hits", e);
+ }
+
+ // Make SVT RawTrackerHits.
+ try {
+ svtReader.makeHits(evioEvent, lcsimEvent);
+ } catch (final Exception e) {
+ LOGGER.log(Level.SEVERE, "Error making SVT hits", e);
+ }
+
+ // Write the current EPICS data into this event.
+ if (epicsData != null) {
+ LOGGER.finest("writing EPICS data to lcsim event " + lcsimEvent.getEventNumber());
+ epicsData.write(lcsimEvent);
+ epicsData = null;
+ }
+
+ // Write scalars into the event, if they exist in this EVIO data.
+ this.writeScalarData(evioEvent, lcsimEvent);
+
+ return lcsimEvent;
+ }
+
+ @Override
+ public void readEvioEvent(final EvioEvent evioEvent) {
super.readEvioEvent(evioEvent);
// Create EPICS data if this is an EPICS control event.
if (EvioEventUtilities.isEpicsEvent(evioEvent)) {
- createEpicsData(evioEvent);
+ this.createEpicsData(evioEvent);
}
- }
-
- /**
- * Create and cache an {@link org.hps.record.epics.EpicsData} object.
- *
- * @param evioEvent The EVIO event data.
- */
- void createEpicsData(EvioEvent evioEvent) {
- epicsProcessor.process(evioEvent);
- epicsData = epicsProcessor.getEpicsData();
}
/**
@@ -93,49 +133,11 @@
* @param evioEvent The EVIO event data.
* @param lcsimEvent The output LCSim event.
*/
- void writeScalarData(EvioEvent evioEvent, EventHeader lcsimEvent) {
+ void writeScalarData(final EvioEvent evioEvent, final EventHeader lcsimEvent) {
scalarProcessor.process(evioEvent);
if (scalarProcessor.getScalarData() != null) {
+ LOGGER.finest("writing scalar data to lcsim event " + lcsimEvent.getEventNumber());
scalarProcessor.getScalarData().write(lcsimEvent);
}
}
-
- @Override
- public EventHeader makeLCSimEvent(EvioEvent evioEvent) {
- if (!EvioEventUtilities.isPhysicsEvent(evioEvent)) {
- throw new RuntimeException("Not a physics event: event tag " + evioEvent.getHeader().getTag());
- }
-
- // Create a new LCSimEvent.
- EventHeader lcsimEvent = getEventData(evioEvent);
-
- // Put DAQ Configuration info into lcsimEvent.
- triggerConfigReader.getDAQConfig(evioEvent, lcsimEvent);
-
- // Make RawCalorimeterHit collection, combining top and bottom section
- // of ECal into one list.
- try {
- ecalReader.makeHits(evioEvent, lcsimEvent);
- } catch (Exception e) {
- Logger.getLogger(this.getClass().getName()).log(Level.SEVERE, "Error making ECal hits", e);
- }
-
- // Make SVT RawTrackerHits.
- try {
- svtReader.makeHits(evioEvent, lcsimEvent);
- } catch (Exception e) {
- Logger.getLogger(this.getClass().getName()).log(Level.SEVERE, "Error making SVT hits", e);
- }
-
- // Write the current EPICS data into this event.
- if (epicsData != null) {
- epicsData.write(lcsimEvent);
- epicsData = null;
- }
-
- // Write scalars into the event, if they exist in this EVIO data.
- writeScalarData(evioEvent, lcsimEvent);
-
- return lcsimEvent;
- }
}
|