Print

Print


Commit in hps-java/src/main on MAIN
java/org/lcsim/hps/recon/tracking/SvtUtils.java+11-11.12 -> 1.13
java/org/lcsim/hps/evio/SVTHitWriter.java+16-161.2 -> 1.3
java/org/lcsim/hps/util/CollectionSizeDriver.java+3-11.2 -> 1.3
java/org/lcsim/hps/readout/ecal/TriggerDriver.java+11-41.5 -> 1.6
                               /FADCTriggerDriver.java+1-121.2 -> 1.3
                               /DummyTriggerDriver.java+1-71.2 -> 1.3
resources/org/lcsim/hps/steering/readout/LcioToEvio.lcsim+51.1 -> 1.2
+48-41
7 modified files
make EVIO format work with 2014 data; fix LcioToEvio.lcsim

hps-java/src/main/java/org/lcsim/hps/recon/tracking
SvtUtils.java 1.12 -> 1.13
diff -u -r1.12 -r1.13
--- SvtUtils.java	1 Mar 2013 01:15:20 -0000	1.12
+++ SvtUtils.java	2 Apr 2013 01:11:10 -0000	1.13
@@ -28,7 +28,7 @@
 /**
  *
  * @author Omar Moreno
- * @version $Id: SvtUtils.java,v 1.12 2013/03/01 01:15:20 meeg Exp $
+ * @version $Id: SvtUtils.java,v 1.13 2013/04/02 01:11:10 meeg Exp $
  */
 public class SvtUtils {
 
@@ -59,6 +59,7 @@
     ConditionsManager manager = ConditionsManager.defaultInstance();
     int maxModuleNumber = 0;
     int maxLayerNumber = 0;
+    private Set<Integer> fpgaNumbers = new HashSet<Integer>();
     private boolean isSetup = false;
     boolean debug = false;
 
@@ -164,6 +165,10 @@
         return sensors;
     }
 
+    public Set<Integer> getFpgaNumbers() {
+        return fpgaNumbers;
+    }
+
     /**
      * 
      */
@@ -178,6 +183,10 @@
         return sensorToDaqPair.get(sensor).getSecondElement();
     }
 
+    public int getFPGACount() {
+        return 0;
+    }
+
     /**
      * 
      */
@@ -329,6 +338,7 @@
                     int fpga = Integer.valueOf(stringTok.nextToken());
                     int hybrid = Integer.valueOf(stringTok.nextToken());
                     Pair<Integer, Integer> daqPair = new Pair<Integer, Integer>(fpga, hybrid);
+                    fpgaNumbers.add(fpga);
                     maxModuleNumber = Math.max(maxModuleNumber, module);
                     maxLayerNumber = Math.max(maxLayerNumber, layer);
                     switch (module % 2) {

hps-java/src/main/java/org/lcsim/hps/evio
SVTHitWriter.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- SVTHitWriter.java	1 Mar 2013 01:30:25 -0000	1.2
+++ SVTHitWriter.java	2 Apr 2013 01:11:11 -0000	1.3
@@ -1,7 +1,10 @@
 package org.lcsim.hps.evio;
 
 import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 import static org.lcsim.hps.evio.EventConstants.SVT_BANK_NUMBER;
 import static org.lcsim.hps.evio.EventConstants.SVT_BANK_TAG;
 import static org.lcsim.hps.evio.EventConstants.SVT_TOTAL_NUMBER_FPGAS;
@@ -23,7 +26,7 @@
 /**
  *
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: SVTHitWriter.java,v 1.2 2013/03/01 01:30:25 meeg Exp $
+ * @version $Id: SVTHitWriter.java,v 1.3 2013/04/02 01:11:11 meeg Exp $
  */
 public class SVTHitWriter implements HitWriter {
 
@@ -45,14 +48,14 @@
     }
 
     //make some dummy FpgaData to use in case there isn't any real FpgaData
-    private static List<FpgaData> makeFpgaData() {
+    private static Map<Integer,FpgaData> makeFpgaData() {
         double[] temps = new double[HPSSVTConstants.TOTAL_HYBRIDS_PER_FPGA * HPSSVTConstants.TOTAL_TEMPS_PER_HYBRID];
         for (int i = 0; i < HPSSVTConstants.TOTAL_HYBRIDS_PER_FPGA * HPSSVTConstants.TOTAL_TEMPS_PER_HYBRID; i++) {
             temps[i] = 23.0;
         }
-        List<FpgaData> fpgaData = new ArrayList<FpgaData>();
-        for (int fpgaNumber = 0; fpgaNumber < SVT_TOTAL_NUMBER_FPGAS; fpgaNumber++) {
-            fpgaData.add(new FpgaData(fpgaNumber, temps, 0));
+                Map<Integer,FpgaData> fpgaData = new HashMap<Integer, FpgaData>();
+        for (Integer fpgaNumber : SvtUtils.getInstance().getFpgaNumbers()) {
+            fpgaData.put(fpgaNumber,new FpgaData(fpgaNumber, temps, 0));
         }
 
         return fpgaData;
@@ -62,14 +65,15 @@
     public void writeData(EventHeader event, EventBuilder builder) {
 
         List<RawTrackerHit> hits = event.get(RawTrackerHit.class, hitCollectionName);
-        List<FpgaData> fpgaData = makeFpgaData();
+        Map<Integer,FpgaData> fpgaData = makeFpgaData();
 
         System.out.println("Writing " + hits.size() + " SVT hits");
         System.out.println("Writing " + fpgaData.size() + " FPGA data");
 
-        List<List<int[]>> fpgaHits = new ArrayList<List<int[]>>();
-        for (int fpgaNumber = 0; fpgaNumber < SVT_TOTAL_NUMBER_FPGAS; fpgaNumber++) {
-            fpgaHits.add(new ArrayList<int[]>());
+                Map<Integer, List<int[]>> fpgaHits = new HashMap<Integer, List<int[]>>();
+
+        for (Integer fpgaNumber : SvtUtils.getInstance().getFpgaNumbers()) {
+            fpgaHits.put(fpgaNumber,new ArrayList<int[]>());
         }
 
         for (RawTrackerHit hit : hits) {
@@ -88,12 +92,8 @@
         EvioBank svtBank = new EvioBank(SVT_BANK_TAG, DataType.BANK, SVT_BANK_NUMBER);
 
         // Iterate over FPGA's 0 - 6
-        for (int fpgaNumber = 0; fpgaNumber < SVT_TOTAL_NUMBER_FPGAS; fpgaNumber++) {
-
-            // Skip FPGA 7 for now
-            if (fpgaNumber == 7) {
-                continue;
-            }
+//        for (int fpgaNumber = 0; fpgaNumber < SVT_TOTAL_NUMBER_FPGAS; fpgaNumber++) {
+        for (Integer fpgaNumber : SvtUtils.getInstance().getFpgaNumbers()) {
             FpgaData fpgaDatum = fpgaData.get(fpgaNumber);
             int[] header = fpgaDatum.extractData();
 
@@ -150,7 +150,7 @@
         int flags = 1 << LCIOConstants.TRAWBIT_ID1;
         toEvent.put(hitCollectionName, rawTrackerHits, RawTrackerHit.class, flags, readoutName);
 
-        List<FpgaData> fpgaData = makeFpgaData();
+        List<FpgaData> fpgaData = new ArrayList(makeFpgaData().values());
         System.out.println("Writing " + fpgaData.size() + " FPGA data");
 
         toEvent.put(fpgaDataCollectionName, fpgaData, FpgaData.class, 0);

hps-java/src/main/java/org/lcsim/hps/util
CollectionSizeDriver.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- CollectionSizeDriver.java	25 Feb 2013 21:55:43 -0000	1.2
+++ CollectionSizeDriver.java	2 Apr 2013 01:11:11 -0000	1.3
@@ -10,7 +10,7 @@
 /**
  * Prints a summary of collections seen in the file, and their average sizes.
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: CollectionSizeDriver.java,v 1.2 2013/02/25 21:55:43 meeg Exp $
+ * @version $Id: CollectionSizeDriver.java,v 1.3 2013/04/02 01:11:11 meeg Exp $
  */
 public class CollectionSizeDriver extends Driver {
 
@@ -50,6 +50,8 @@
 
         String name;
         Class type;
+        boolean hasHits;
+        int nHits;
         double eventsWithCollection = 0;
         double totalCount = 0;
 

hps-java/src/main/java/org/lcsim/hps/readout/ecal
TriggerDriver.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- TriggerDriver.java	20 Mar 2013 01:21:29 -0000	1.5
+++ TriggerDriver.java	2 Apr 2013 01:11:11 -0000	1.6
@@ -11,6 +11,7 @@
 import java.util.logging.Level;
 import java.util.logging.Logger;
 import org.lcsim.event.EventHeader;
+import org.lcsim.hps.evio.TriggerData;
 import org.lcsim.hps.util.ClockSingleton;
 import org.lcsim.util.lcio.LCIOWriter;
 
@@ -21,7 +22,7 @@
  * To implement: extend this class and write your own triggerDecision().
  *
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: TriggerDriver.java,v 1.5 2013/03/20 01:21:29 meeg Exp $
+ * @version $Id: TriggerDriver.java,v 1.6 2013/04/02 01:11:11 meeg Exp $
  */
 public abstract class TriggerDriver extends TriggerableDriver {
 
@@ -29,7 +30,7 @@
     private String outputFileName = null;
     protected PrintWriter outputStream = null;
     protected int numTriggers;
-    private int lastTrigger;
+    private int lastTrigger = Integer.MIN_VALUE;
     private int deadTime = 0;
     private static boolean triggerBit = false;
     private String lcioFile = null;
@@ -87,8 +88,7 @@
     public void process(EventHeader event) {
         triggerBit = false; //reset trigger
         //System.out.println(this.getClass().getCanonicalName() + " - process");
-
-        if (ClockSingleton.getClock() - lastTrigger > deadTime && triggerDecision(event)) {
+        if ((lastTrigger == Integer.MIN_VALUE || ClockSingleton.getClock() - lastTrigger > deadTime) && triggerDecision(event)) {
             sendTrigger();
             for (TriggerableDriver triggerable : triggerables) {
                 ReadoutTimestamp.addTimestamp(triggerable, event);
@@ -152,7 +152,14 @@
 
     protected abstract boolean triggerDecision(EventHeader event);
 
+    /**
+     * Make a dummy TriggerData
+     */
     protected void makeTriggerData(EventHeader event, String collectionName) {
+        TriggerData tData = new TriggerData(new int[8]);
+        List<TriggerData> triggerList = new ArrayList<TriggerData>();
+        triggerList.add(tData);
+        event.put(collectionName, triggerList, TriggerData.class, 0);
     }
 
     @Override

hps-java/src/main/java/org/lcsim/hps/readout/ecal
FADCTriggerDriver.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- FADCTriggerDriver.java	20 Mar 2013 01:21:29 -0000	1.2
+++ FADCTriggerDriver.java	2 Apr 2013 01:11:11 -0000	1.3
@@ -23,7 +23,7 @@
  *
  * @author Omar Moreno <[log in to unmask]>
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: FADCTriggerDriver.java,v 1.2 2013/03/20 01:21:29 meeg Exp $
+ * @version $Id: FADCTriggerDriver.java,v 1.3 2013/04/02 01:11:11 meeg Exp $
  */
 public class FADCTriggerDriver extends TriggerDriver {
 
@@ -480,15 +480,4 @@
     private double getClusterDistance(HPSEcalCluster cluster) {
         return Math.hypot(cluster.getSeedHit().getPosition()[0], cluster.getSeedHit().getPosition()[1]);
     }
-
-    /**
-     * Make a dummy TriggerData
-     */
-    @Override
-    protected void makeTriggerData(EventHeader event, String collectionName) {
-        TriggerData tData = new TriggerData(new int[8]);
-        List<TriggerData> triggerList = new ArrayList<TriggerData>();
-        triggerList.add(tData);
-        event.put(collectionName, triggerList, TriggerData.class, 0);
-    }
 }
\ No newline at end of file

hps-java/src/main/java/org/lcsim/hps/readout/ecal
DummyTriggerDriver.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- DummyTriggerDriver.java	20 Mar 2013 01:21:29 -0000	1.2
+++ DummyTriggerDriver.java	2 Apr 2013 01:11:11 -0000	1.3
@@ -1,15 +1,13 @@
 package org.lcsim.hps.readout.ecal;
 
-import java.util.List;
 import org.lcsim.event.EventHeader;
-import org.lcsim.hps.recon.ecal.HPSEcalCluster;
 import org.lcsim.hps.util.ClockSingleton;
 
 /**
  * Free-running trigger - triggers on every Nth event
  *
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: DummyTriggerDriver.java,v 1.2 2013/03/20 01:21:29 meeg Exp $
+ * @version $Id: DummyTriggerDriver.java,v 1.3 2013/04/02 01:11:11 meeg Exp $
  */
 public class DummyTriggerDriver extends TriggerDriver {
 
@@ -23,8 +21,4 @@
     public boolean triggerDecision(EventHeader event) {
         return (ClockSingleton.getClock() % period == 0);
     }
-
-    public boolean testTrigger(List<HPSEcalCluster> clusters) {
-        return false;
-    }
 }

hps-java/src/main/resources/org/lcsim/hps/steering/readout
LcioToEvio.lcsim 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- LcioToEvio.lcsim	1 Mar 2013 23:22:24 -0000	1.1
+++ LcioToEvio.lcsim	2 Apr 2013 01:11:11 -0000	1.2
@@ -4,15 +4,20 @@
 <lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" 
        xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd">
     <execute>
+        <driver name="CalibrationDriver"/>
+        <driver name="RawTrackerHitSensorSetup"/>
         <driver name="DummyTrigger"/>
         <driver name="TestRunReconToEvio"/>
         <driver name="ClockDriver"/>
     </execute> 
 
     <drivers>
+        <driver name="CalibrationDriver" type="org.lcsim.hps.monitoring.CalibrationDriver"/>
+        <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup"/>
         <driver name="DummyTrigger" type="org.lcsim.hps.readout.ecal.DummyTriggerDriver">
             <period>1</period>
             <deadTime>0</deadTime>
+            <triggerDelay>0</triggerDelay>
         </driver>	
         <driver name="TestRunReconToEvio" type="org.lcsim.hps.evio.TestRunTriggeredReconToEvio">
             <evioOutputFile>${outputFile}.evio</evioOutputFile>
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