Commit in hps-java/src/main on MAIN
java/org/lcsim/hps/evio/TriggerDataWriter.java+59added 1.1
                       /TestRunTriggeredReconToLcio.java+41.3 -> 1.4
                       /LCSimTestRunEventBuilder.java+8-41.18 -> 1.19
                       /BasicEvioFileReader.java+1-11.9 -> 1.10
                       /TestRunTriggeredReconToEvio.java+41.14 -> 1.15
                       /EventConstants.java+2-11.13 -> 1.14
                       /TriggerData.java+6-11.2 -> 1.3
resources/org/lcsim/hps/steering/HPSTestRunReconToLcio.lcsim-41.1 -> 1.2
                                /HPSTestRunReconToEvio.lcsim-41.8 -> 1.9
+84-15
1 added + 8 modified, total 9 files
write trigger bank to EVIO

hps-java/src/main/java/org/lcsim/hps/evio
TriggerDataWriter.java added at 1.1
diff -N TriggerDataWriter.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ TriggerDataWriter.java	3 Aug 2012 23:14:39 -0000	1.1
@@ -0,0 +1,59 @@
+package org.lcsim.hps.evio;
+
+import java.util.List;
+import org.jlab.coda.jevio.BaseStructure;
+import org.jlab.coda.jevio.DataType;
+import org.jlab.coda.jevio.EventBuilder;
+import org.jlab.coda.jevio.EvioBank;
+import org.jlab.coda.jevio.EvioException;
+import org.lcsim.event.EventHeader;
+
+/**
+ *
+ * @author Sho Uemura <[log in to unmask]>
+ * @version $Id: TriggerDataWriter.java,v 1.1 2012/08/03 23:14:39 meeg Exp $
+ */
+public class TriggerDataWriter implements HitWriter {
+
+    @Override
+    public boolean hasData(EventHeader event) {
+        return event.hasCollection(TriggerData.class, TriggerData.TRIG_COLLECTION);
+    }
+
+    @Override
+    public void writeData(EventHeader event, EventBuilder builder) {
+        // Make a new bank for this crate.
+        BaseStructure topBank = null;
+        // Does this bank already exist?
+        for (BaseStructure bank : builder.getEvent().getChildren()) {
+            if (bank.getHeader().getTag() == EventConstants.ECAL_TOP_BANK_TAG) {
+                topBank = bank;
+                break;
+            }
+        }
+        // If they don't exist, make them.
+        if (topBank == null) {
+            topBank = new EvioBank(EventConstants.ECAL_TOP_BANK_TAG, DataType.BANK, EventConstants.ECAL_BANK_NUMBER);
+            try {
+                builder.addChild(builder.getEvent(), topBank);
+            } catch (EvioException e) {
+                throw new RuntimeException(e);
+            }
+        }
+
+
+        List<TriggerData> triggerList = event.get(TriggerData.class, TriggerData.TRIG_COLLECTION);
+        EvioBank triggerBank = new EvioBank(EventConstants.TRIGGER_BANK_TAG, DataType.UINT32, EventConstants.TRIGGER_BANK_NUMBER);
+        try {
+            triggerBank.appendIntData(triggerList.get(0).getBank());
+            builder.addChild(topBank, triggerBank);
+        } catch (EvioException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    @Override
+    public void writeData(EventHeader event, EventHeader toEvent) {
+        toEvent.put(TriggerData.TRIG_COLLECTION, event.get(TriggerData.class, TriggerData.TRIG_COLLECTION));
+    }
+}

hps-java/src/main/java/org/lcsim/hps/evio
TestRunTriggeredReconToLcio.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- TestRunTriggeredReconToLcio.java	3 Aug 2012 00:05:26 -0000	1.3
+++ TestRunTriggeredReconToLcio.java	3 Aug 2012 23:14:39 -0000	1.4
@@ -31,6 +31,7 @@
 //    HPSEcalConditions ecalIDConverter = null;
     ECalHitWriter ecalWriter = null;
     SVTHitWriter svtWriter = null;
+    TriggerDataWriter triggerWriter = null;
     List<HitWriter> writers = null;
     LCIOWriter lcioWriter = null;
     Queue<EventHeader> events = null;
@@ -72,6 +73,9 @@
         svtWriter = new SVTHitWriter();
         writers.add(svtWriter);
 
+        triggerWriter = new TriggerDataWriter();
+        writers.add(triggerWriter);
+
         try {
             lcioWriter = new LCIOWriter(new File(outputFile));
         } catch (IOException e) {

hps-java/src/main/java/org/lcsim/hps/evio
LCSimTestRunEventBuilder.java 1.18 -> 1.19
diff -u -r1.18 -r1.19
--- LCSimTestRunEventBuilder.java	31 May 2012 00:28:18 -0000	1.18
+++ LCSimTestRunEventBuilder.java	3 Aug 2012 23:14:39 -0000	1.19
@@ -62,7 +62,6 @@
 //    public void setEcalName(String ecalName) {
 //        ecalReader.setEcalName(ecalName);
 //    }
-
 //    public Detector getDetector() {
 //        return detector;
 //    }
@@ -108,9 +107,11 @@
                     eventID = bank.getIntData();
                 }
                 if (bank.getHeader().getTag() == EventConstants.ECAL_TOP_BANK_TAG || bank.getHeader().getTag() == EventConstants.ECAL_BOTTOM_BANK_TAG) {
-                    for (BaseStructure slotBank : bank.getChildren()) {
-                        if (slotBank.getHeader().getTag() == EventConstants.TRIGGER_BANK_TAG) {
-                            triggerList.add(new TriggerData(slotBank.getIntData()));
+                    if (bank.getChildCount() > 0) {
+                        for (BaseStructure slotBank : bank.getChildren()) {
+                            if (slotBank.getHeader().getTag() == EventConstants.TRIGGER_BANK_TAG) {
+                                triggerList.add(new TriggerData(slotBank.getIntData()));
+                            }
                         }
                     }
                 }
@@ -132,6 +133,9 @@
             }
         }
 
+        if (triggerList.isEmpty()) {
+            System.out.println("No trigger bank found");
+        }
         // Create a new LCSimEvent.
         EventHeader lcsimEvent = null;
         if (triggerList.isEmpty() || triggerList.get(0).getTime() == 0) {

hps-java/src/main/java/org/lcsim/hps/evio
BasicEvioFileReader.java 1.9 -> 1.10
diff -u -r1.9 -r1.10
--- BasicEvioFileReader.java	16 May 2012 15:59:08 -0000	1.9
+++ BasicEvioFileReader.java	3 Aug 2012 23:14:39 -0000	1.10
@@ -48,7 +48,7 @@
     private static void printBank(BaseStructure bank, String indent) throws EvioException {
         System.out.println(indent + "Bank contains " + bank.getTotalBytes() + " bytes.");
         System.out.println(indent + "Bank has " + bank.getChildCount() + " sub-banks.");
-        System.out.format(indent + "Bank tag: 0x%x length: %d type: %s\n", bank.getHeader().getTag(), bank.getHeader().getLength(), bank.getHeader().getDataType());
+        System.out.format(indent + "Bank tag: 0x%x length: %d type: %s num: %d\n", bank.getHeader().getTag(), bank.getHeader().getLength(), bank.getHeader().getDataType(), bank.getHeader().getNumber());
         if (bank.getChildCount() > 0) {
             for (BaseStructure child : bank.getChildren()) {
                 printBank(child, indent + "\t");

hps-java/src/main/java/org/lcsim/hps/evio
TestRunTriggeredReconToEvio.java 1.14 -> 1.15
diff -u -r1.14 -r1.15
--- TestRunTriggeredReconToEvio.java	30 Jul 2012 23:31:45 -0000	1.14
+++ TestRunTriggeredReconToEvio.java	3 Aug 2012 23:14:39 -0000	1.15
@@ -29,6 +29,7 @@
     HPSEcalConditions ecalIDConverter = null;
     ECalHitWriter ecalWriter = null;
     SVTHitWriter svtWriter = null;
+    TriggerDataWriter triggerWriter = null;
     List<HitWriter> writers = null;
     private int ecalMode = EventConstants.ECAL_PULSE_INTEGRAL_MODE;
 
@@ -74,6 +75,9 @@
 
         svtWriter = new SVTHitWriter();
         writers.add(svtWriter);
+        
+        triggerWriter = new TriggerDataWriter();
+        writers.add(triggerWriter);
 
         builderQueue = new LinkedList<QueuedEtEvent>();
     }

hps-java/src/main/java/org/lcsim/hps/evio
EventConstants.java 1.13 -> 1.14
diff -u -r1.13 -r1.14
--- EventConstants.java	3 Aug 2012 21:37:12 -0000	1.13
+++ EventConstants.java	3 Aug 2012 23:14:39 -0000	1.14
@@ -21,7 +21,8 @@
     // These values are put into the number field of the banks.
     // FIXME Bank numbers should actually be sequentially numbered and not hard-coded.
     public static final int SVT_BANK_NUMBER = 1;
-    public static final int ECAL_BANK_NUMBER = 2;
+    public static final int ECAL_BANK_NUMBER = 1;
+    public static final int TRIGGER_BANK_NUMBER = 1;
     public static final int ECAL_WINDOW_MODE = 1;
     public static final int ECAL_PULSE_MODE = 2;
     public static final int ECAL_PULSE_INTEGRAL_MODE = 3;

hps-java/src/main/java/org/lcsim/hps/evio
TriggerData.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- TriggerData.java	3 Aug 2012 00:05:26 -0000	1.2
+++ TriggerData.java	3 Aug 2012 23:14:39 -0000	1.3
@@ -5,7 +5,7 @@
 /**
  *
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: TriggerData.java,v 1.2 2012/08/03 00:05:26 meeg Exp $
+ * @version $Id: TriggerData.java,v 1.3 2012/08/03 23:14:39 meeg Exp $
  */
 public class TriggerData implements GenericObject {
     public static final int OR_TRIG = 3;
@@ -14,6 +14,7 @@
     public static final int AND_TRIG = 6;
     public static final int TIME = 7;
     public static final int TRIG_BANK_SIZE = 8;
+    public static final String TRIG_COLLECTION = "TriggerBank";
 
     private int[] bank;
 
@@ -40,6 +41,10 @@
     public int getAndTrig() {
         return getIntVal(AND_TRIG);
     }
+    
+    public int[] getBank() {
+        return bank;
+    }
 
     @Override
     public int getNInt() {

hps-java/src/main/resources/org/lcsim/hps/steering
HPSTestRunReconToLcio.lcsim 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- HPSTestRunReconToLcio.lcsim	30 Jul 2012 23:31:45 -0000	1.1
+++ HPSTestRunReconToLcio.lcsim	3 Aug 2012 23:14:39 -0000	1.2
@@ -7,10 +7,6 @@
     <inputFiles>
         <file>${inputFile}</file>
     </inputFiles>
-    
-    <control>
-        <numberOfEvents>-1</numberOfEvents>
-    </control>
 
     <execute>
         <driver name="LoadCalibrations"/>

hps-java/src/main/resources/org/lcsim/hps/steering
HPSTestRunReconToEvio.lcsim 1.8 -> 1.9
diff -u -r1.8 -r1.9
--- HPSTestRunReconToEvio.lcsim	29 Jun 2012 23:00:48 -0000	1.8
+++ HPSTestRunReconToEvio.lcsim	3 Aug 2012 23:14:39 -0000	1.9
@@ -8,10 +8,6 @@
         <file>${inputFile}</file>
     </inputFiles>
     
-    <control>
-        <numberOfEvents>-1</numberOfEvents>
-    </control>
-
     <execute>
         <driver name="LoadCalibrations"/>
         <driver name="HPSCalibrationDriver"/>   
CVSspam 0.2.12


Use REPLY-ALL to reply to list

To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1