Author: [log in to unmask] Date: Thu Feb 5 17:07:00 2015 New Revision: 2052 Log: starting to get DAQ Config from evio Added: java/trunk/ecal-readout-sim/src/main/java/org/hps/readout/ecal/triggerbank/TriggerConfig.java Modified: java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java Added: java/trunk/ecal-readout-sim/src/main/java/org/hps/readout/ecal/triggerbank/TriggerConfig.java ============================================================================= --- java/trunk/ecal-readout-sim/src/main/java/org/hps/readout/ecal/triggerbank/TriggerConfig.java (added) +++ java/trunk/ecal-readout-sim/src/main/java/org/hps/readout/ecal/triggerbank/TriggerConfig.java Thu Feb 5 17:07:00 2015 @@ -0,0 +1,24 @@ +package org.hps.readout.ecal.triggerbank; + +public class TriggerConfig { + + private String[] dump; + + public TriggerConfig(String[] dump) { + this.dump=dump; + /* + System.err.println("CAT"); + for (String xx : this.dump) { + System.err.println(xx); + } + System.err.println("DOG"); + for (int ii=0; ii<this.dump.length; ii++) { + System.err.println(ii); + System.err.println(this.dump[ii]); + } + // LOOKS GOOD + */ + + // NOW PARSE: + } +} 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 Thu Feb 5 17:07:00 2015 @@ -4,10 +4,13 @@ import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; + +import org.hps.readout.ecal.triggerbank.AbstractIntData; import org.hps.readout.ecal.triggerbank.SSPData; import org.hps.readout.ecal.triggerbank.TIData; -import org.hps.readout.ecal.triggerbank.AbstractIntData; +import org.hps.readout.ecal.triggerbank.TriggerConfig; import org.hps.record.evio.EvioEventUtilities; +import org.jlab.coda.jevio.BaseStructure; import org.jlab.coda.jevio.EvioEvent; import org.lcsim.event.EventHeader; @@ -50,7 +53,10 @@ // Create a new LCSimEvent. EventHeader lcsimEvent = getEventData(evioEvent); - + + // Put DAQ Configuration info into lcsimEvent (NAB Feb 5, 2015): + //getDAQConfig(evioEvent,lcsimEvent); + // Make RawCalorimeterHit collection, combining top and bottom section // of ECal into one list. try { @@ -69,4 +75,20 @@ // } return lcsimEvent; } + + // NAB Feb 5, 2015: + public void getDAQConfig(EvioEvent evioEvent, EventHeader lcsimEvent) { + List <TriggerConfig> trigconf=new ArrayList<TriggerConfig>(); + for (BaseStructure bank : evioEvent.getChildrenList()) { + if (bank.getChildCount()<=0) continue; + for (BaseStructure subBank : bank.getChildrenList()) { + if (subBank.getHeader().getTag() == 0xE10E) { + if (subBank.getStringData() == null) continue; // unfortunately necessary + trigconf.add(new TriggerConfig(subBank.getStringData())); + } + } + } + lcsimEvent.put("TriggerConfig",trigconf,TriggerConfig.class,0); + } + }