Print

Print


Commit in java/trunk on MAIN
monitoring-drivers/src/main/java/org/hps/monitoring/drivers/ecal/EcalMonitoringTestDriver.java+44added 622
steering-files/src/main/resources/org/hps/steering/monitoring/MonitoringTest.lcsim+2-22621 -> 622
+46-22
1 added + 1 modified, total 2 files
Simplest monitoring test with just one plot.

java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/ecal
EcalMonitoringTestDriver.java added at 622
--- java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/ecal/EcalMonitoringTestDriver.java	                        (rev 0)
+++ java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/ecal/EcalMonitoringTestDriver.java	2014-05-22 21:24:50 UTC (rev 622)
@@ -0,0 +1,44 @@
+package org.hps.monitoring.drivers.ecal;
+
+import hep.aida.IHistogram1D;
+import hep.aida.IPlotter;
+import hep.aida.IPlotterFactory;
+
+import java.util.List;
+
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.RawCalorimeterHit;
+import org.lcsim.util.Driver;
+import org.lcsim.util.aida.AIDA;
+
+/**
+ * This is very simple Driver that plots the amplitude from RawCalorimeterHits
+ * in the ECAL as a basic test that the monitoring system works.
+ * 
+ * @author Jeremy McCormick <[log in to unmask]>
+ *
+ */
+public class EcalMonitoringTestDriver extends Driver {
+       
+    static final String collectionName = "EcalReadoutHits";
+    AIDA aida = AIDA.defaultInstance();
+    IHistogram1D amplitudePlot;    
+    
+    public void startOfData() {
+        amplitudePlot = aida.histogram1D("Amplitude", 300, 0., 30000);
+        IPlotterFactory plotterFactory = aida.analysisFactory().createPlotterFactory("ECAL Plots");
+        IPlotter plotter = plotterFactory.create("Amplitude");
+        plotter.createRegion();
+        plotter.region(0).plot(amplitudePlot);
+        plotter.show();
+    }
+    
+    public void process(EventHeader event) {
+        if (event.hasCollection(RawCalorimeterHit.class, collectionName)) {
+            List<RawCalorimeterHit> hits = event.get(RawCalorimeterHit.class, collectionName);
+            for (RawCalorimeterHit hit : hits) {
+                amplitudePlot.fill(hit.getAmplitude());
+            }        
+        }
+    }
+}

java/trunk/steering-files/src/main/resources/org/hps/steering/monitoring
MonitoringTest.lcsim 621 -> 622
--- java/trunk/steering-files/src/main/resources/org/hps/steering/monitoring/MonitoringTest.lcsim	2014-05-22 21:20:51 UTC (rev 621)
+++ java/trunk/steering-files/src/main/resources/org/hps/steering/monitoring/MonitoringTest.lcsim	2014-05-22 21:24:50 UTC (rev 622)
@@ -1,29 +1,9 @@
-
 <lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" 
        xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd">       
-    <control>
-        <numberOfEvents>-1</numberOfEvents> 
-        <printInputFiles>true</printInputFiles>
-        <printDriversDetailed>true</printDriversDetailed>
-    </control>    
     <execute>
-        <driver name="EventMarkerDriver"/>
-        <driver name="ConditionsDriver"/>
-        <driver name="EcalPlotsDriver"/>
-        <driver name="AidaSaveDriver"/>
+        <driver name="EcalMonitoringTestDriver"/>
     </execute>   
     <drivers>
-        <driver name="EventMarkerDriver"
-                type="org.lcsim.job.EventMarkerDriver">
-            <eventInterval>1000</eventInterval>
-        </driver>
-        <driver name="ConditionsDriver" type="org.hps.conditions.ConditionsDriver">
-            <conditionsReaderClass>org.hps.conditions.deprecated.TestRunConditionsReader</conditionsReaderClass>
-        </driver>
-        <driver name="EcalPlotsDriver" type="org.hps.users.jeremym.EcalConditionsTestDriver"/>
-        <driver name="AidaSaveDriver" type="org.lcsim.job.AidaSaveDriver">
-            <outputFileName>./conditions_test_plots.aida</outputFileName>
-<!--            <outputFileName>./conditions_test_plots.root</outputFileName>-->
-        </driver>
+        <driver name="EcalMonitoringTestDriver" type="org.hps.monitoring.drivers.ecal.EcalMonitoringTestDriver" />
     </drivers>
 </lcsim>
SVNspam 0.1