Print

Print


Commit in hps-java/src/main on MAIN
java/org/lcsim/hps/recon/ecal/HPSTriggerDriver.java+14-121.11 -> 1.12
                             /HPSDummyTriggerDriver.java+14-91.1 -> 1.2
resources/org/lcsim/hps/steering/HPSTestRunLcioToEvio.lcsim+34added 1.1
java/org/lcsim/hps/util/ClockSingleton.java+2-51.5 -> 1.6
+64-26
1 added + 3 modified, total 4 files
new steering file for direct LCIO->EVIO conversion

hps-java/src/main/java/org/lcsim/hps/recon/ecal
HPSTriggerDriver.java 1.11 -> 1.12
diff -u -r1.11 -r1.12
--- HPSTriggerDriver.java	30 Jul 2012 23:31:45 -0000	1.11
+++ HPSTriggerDriver.java	31 Jul 2012 00:08:40 -0000	1.12
@@ -11,7 +11,6 @@
 import org.lcsim.geometry.Detector;
 import org.lcsim.geometry.IDDecoder;
 import org.lcsim.geometry.Subdetector;
-import org.lcsim.hps.evio.TestRunTriggeredReconToEvio;
 import org.lcsim.hps.recon.tracking.apv25.HPSAPV25;
 import org.lcsim.hps.util.ClockSingleton;
 import org.lcsim.util.Driver;
@@ -22,13 +21,13 @@
  * Applies SVT trigger latency and sends trigger signal to SVT
  *
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: HPSTriggerDriver.java,v 1.11 2012/07/30 23:31:45 meeg Exp $
+ * @version $Id: HPSTriggerDriver.java,v 1.12 2012/07/31 00:08:40 meeg Exp $
  */
 public abstract class HPSTriggerDriver extends Driver {
 
     protected Subdetector ecal;
-    private String ecalName;
-    private String clusterCollectionName;
+    private String ecalName = "Ecal";
+    private String clusterCollectionName = "EcalClusters";
     protected IDDecoder dec = null;
     private String outputFileName;
     protected PrintWriter outputStream = null;
@@ -71,7 +70,7 @@
     @Override
     public void startOfData() {
         if (clusterCollectionName == null) {
-            throw new RuntimeException("The parameter ecalCollectionName was not set!");
+            throw new RuntimeException("The parameter clusterCollectionName was not set!");
         }
 
         if (ecalName == null) {
@@ -105,13 +104,7 @@
         triggerBit = false; //reset trigger
         //System.out.println(this.getClass().getCanonicalName() + " - process");
 
-        // Get the list of raw ECal hits.
-        List<HPSEcalCluster> clusters = event.get(HPSEcalCluster.class, clusterCollectionName);
-        if (clusters == null) {
-            throw new RuntimeException("Event is missing ECal clusters collection!");
-        }
-
-        if (testTrigger(clusters)) {
+        if (triggerDecision(event)) {
             if (ClockSingleton.getClock() - lastTrigger > deadTime) {
                 triggerBit = true;
                 lastTrigger = ClockSingleton.getClock();
@@ -167,6 +160,15 @@
         }
     }
 
+    protected boolean triggerDecision(EventHeader event) {
+        // Get the list of raw ECal hits.
+        List<HPSEcalCluster> clusters = event.get(HPSEcalCluster.class, clusterCollectionName);
+        if (clusters == null) {
+            throw new RuntimeException("Event is missing ECal clusters collection!");
+        }
+        return testTrigger(clusters);
+    }
+
     public abstract boolean testTrigger(List<HPSEcalCluster> clusters);
 
     @Override

hps-java/src/main/java/org/lcsim/hps/recon/ecal
HPSDummyTriggerDriver.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- HPSDummyTriggerDriver.java	26 Apr 2012 18:15:26 -0000	1.1
+++ HPSDummyTriggerDriver.java	31 Jul 2012 00:08:40 -0000	1.2
@@ -1,24 +1,29 @@
 package org.lcsim.hps.recon.ecal;
 
 import java.util.List;
+import org.lcsim.event.EventHeader;
 import org.lcsim.hps.util.ClockSingleton;
 
 /**
  * Free-running trigger - triggers on every Nth event
  *
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: HPSDummyTriggerDriver.java,v 1.1 2012/04/26 18:15:26 meeg Exp $
+ * @version $Id: HPSDummyTriggerDriver.java,v 1.2 2012/07/31 00:08:40 meeg Exp $
  */
 public class HPSDummyTriggerDriver extends HPSTriggerDriver {
 
-	int period = 100;
+    int period = 100;
 
-	public void setPeriod(int period) {
-		this.period = period;
-	}
+    public void setPeriod(int period) {
+        this.period = period;
+    }
 
-	@Override
-	public boolean testTrigger(List<HPSEcalCluster> clusters) {
-		return (ClockSingleton.getClock() % period == 0);
-	}
+    @Override
+    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
HPSTestRunLcioToEvio.lcsim added at 1.1
diff -N HPSTestRunLcioToEvio.lcsim
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ HPSTestRunLcioToEvio.lcsim	31 Jul 2012 00:08:40 -0000	1.1
@@ -0,0 +1,34 @@
+<!-- 
+  Convert LCIO file to EVIO file.
+-->
+<lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" 
+       xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd">
+       
+    <inputFiles>
+        <file>${inputFile}</file>
+    </inputFiles>
+    
+    <control>
+        <numberOfEvents>-1</numberOfEvents>
+    </control>
+
+    <execute>
+        <driver name="DummyTrigger"/>
+        <driver name="TestRunReconToEvio"/>
+        <driver name="ClockDriver"/>
+    </execute> 
+
+    <drivers>
+        <driver name="DummyTrigger" type="org.lcsim.hps.recon.ecal.HPSDummyTriggerDriver">
+            <period>1</period>
+            <deadTime>0</deadTime>
+        </driver>	
+        <driver name="TestRunReconToEvio" type="org.lcsim.hps.evio.TestRunTriggeredReconToEvio">
+            <evioOutputFile>${evioFile}</evioOutputFile>
+        </driver>
+        <driver name="ClockDriver"
+                        type="org.lcsim.hps.util.ClockDriver">
+        </driver>
+    </drivers>
+</lcsim>
+	

hps-java/src/main/java/org/lcsim/hps/util
ClockSingleton.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- ClockSingleton.java	30 Jul 2012 23:31:45 -0000	1.5
+++ ClockSingleton.java	31 Jul 2012 00:08:40 -0000	1.6
@@ -6,11 +6,10 @@
 
 /**
  * singleton clock class - use ClockDriver to control.
- * Also stores trigger state.
- * A better solution might be to store absolute time and triggers in the event.
+ * A better solution might be to store absolute time in the event.
  *
  * @author Sho Uemura <[log in to unmask]>
- * @version $Id: ClockSingleton.java,v 1.5 2012/07/30 23:31:45 meeg Exp $
+ * @version $Id: ClockSingleton.java,v 1.6 2012/07/31 00:08:40 meeg Exp $
  */
 public class ClockSingleton {
 
@@ -18,7 +17,6 @@
 	private int clock;
 	//time between events (bunch spacing)
 	private double dt = 2.0;
-	private boolean trigger = false;
 
 	private ClockSingleton() {
 	}
@@ -45,6 +43,5 @@
 
 	public static void step() {
 		_instance.clock++;
-		_instance.trigger = false;
 	}
 }
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