4 added + 5 modified, total 9 files
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -N CalorimeterHitPlotsDriver.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ CalorimeterHitPlotsDriver.java 28 Jul 2005 19:20:14 -0000 1.1
@@ -0,0 +1,45 @@
+package org.lcsim.slic.diagnostics;
+
+import java.util.List;
+import java.util.Map;
+import java.util.HashMap;
+
+import org.lcsim.util.Driver;
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.EventHeader.LCMetaData;
+import org.lcsim.event.SimCalorimeterHit;
+
+/**
+ *
+ * @author jeremym
+ */
+public class CalorimeterHitPlotsDriver extends Driver
+{
+ Map<String, CalorimeterHitPlots> calorimeterHitPlots = new HashMap<String,CalorimeterHitPlots>();
+
+ public CalorimeterHitPlotsDriver()
+ {}
+
+ protected void process(EventHeader event)
+ {
+ super.process(event);
+
+ List<List<SimCalorimeterHit>> simCalorimeterHitCollections = event.get(SimCalorimeterHit.class);
+ for ( List<SimCalorimeterHit> simCalorimeterHits : simCalorimeterHitCollections)
+ {
+ LCMetaData meta = event.getMetaData(simCalorimeterHits);
+ CalorimeterHitPlots calPlots = getCalorimeterHitPlots(meta);
+ calPlots.fill(simCalorimeterHits);
+ }
+ }
+
+ private CalorimeterHitPlots getCalorimeterHitPlots(LCMetaData meta)
+ {
+ if ( calorimeterHitPlots.get(meta.getName()) == null )
+ {
+ calorimeterHitPlots.put(meta.getName(), new CalorimeterHitPlots(meta) );
+ }
+
+ return calorimeterHitPlots.get(meta.getName());
+ }
+}
\ No newline at end of file
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -N EventSummaryPlotsDriver.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ EventSummaryPlotsDriver.java 28 Jul 2005 19:20:14 -0000 1.1
@@ -0,0 +1,114 @@
+/*
+ * SlicDiagnosticsDriver.java
+ *
+ * Created on July 25, 2005, 4:04 PM
+ */
+
+package org.lcsim.slic.diagnostics;
+
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.io.File;
+
+import org.freehep.application.Application;
+import org.freehep.application.studio.Studio;
+import org.freehep.record.loop.SequentialRecordLoop;
+import org.freehep.record.source.SequentialRecordSource;
+
+import org.lcsim.util.aida.AIDA;
+import hep.aida.ICloud1D;
+import hep.aida.ITree;
+
+import org.lcsim.util.Driver;
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.EventHeader.LCMetaData;
+import org.lcsim.event.SimTrackerHit;
+import org.lcsim.event.SimCalorimeterHit;
+import org.lcsim.event.MCParticle;
+import org.lcsim.geometry.IDDecoder;
+import org.lcsim.event.EventHeader.LCMetaData;
+
+/**
+ *
+ * @author jeremym
+ */
+public class EventSummaryPlotsDriver extends Driver
+{
+ AIDA aida = AIDA.defaultInstance();
+ ITree tree = aida.tree();
+
+ ICloud1D eventTotalEnergy;
+ ICloud1D eventHits;
+ ICloud1D eventTrackerHits;
+ ICloud1D eventCalorimeterHits;
+ ICloud1D eventTrackerEnergy;
+ ICloud1D eventCalorimeterEnergy;
+
+ double trackerTotalEnergy = 0;
+ double calorimeterTotalEnergy = 0;
+ int trackerHitCount = 0;
+ int calorimeterHitCount = 0;
+
+ EventSummaryPlotsDriver()
+ {
+ definePlots();
+ }
+
+ private final void definePlots()
+ {
+ eventTotalEnergy = aida.cloud1D("eventEnergy");
+ eventHits = aida.cloud1D("eventHits");
+ eventTrackerHits = aida.cloud1D("eventTrackerHits");
+ eventCalorimeterHits = aida.cloud1D("eventCalorimeterHits");
+ eventTrackerEnergy = aida.cloud1D("eventTrackerEnergy");
+ eventCalorimeterEnergy = aida.cloud1D("eventCalorimeterEnergy");
+ }
+
+ protected void process(EventHeader event)
+ {
+ super.process(event);
+
+ trackerTotalEnergy = calorimeterTotalEnergy = 0;
+ trackerHitCount = calorimeterHitCount = 0;
+
+ /* cal hits */
+ List<List<SimCalorimeterHit>> cals = event.get(SimCalorimeterHit.class);
+ for ( List<SimCalorimeterHit> simCalHits : cals )
+ {
+ for( SimCalorimeterHit hit : simCalHits )
+ {
+ calorimeterHitCount += 1;
+ calorimeterTotalEnergy += hit.getEnergy();
+ }
+ }
+
+ /* trk hits */
+ List<List<SimTrackerHit>> trks = event.get(SimTrackerHit.class);
+ for ( List<SimTrackerHit> simTrkHits : trks )
+ {
+ for( SimTrackerHit hit : simTrkHits )
+ {
+ trackerHitCount += 1;
+ trackerTotalEnergy += hit.getdEdx();
+ }
+ }
+
+ /* fill the plots */
+ fill();
+ }
+
+ public void fill()
+ {
+ /* event energy */
+ eventTotalEnergy.fill(trackerTotalEnergy + calorimeterTotalEnergy);
+ eventCalorimeterEnergy.fill(calorimeterTotalEnergy);
+ eventTrackerEnergy.fill(trackerTotalEnergy);
+
+ /* event hit counts */
+ eventTrackerHits.fill(trackerHitCount);
+ eventCalorimeterHits.fill(calorimeterHitCount);
+ eventHits.fill(trackerHitCount + calorimeterHitCount);
+ }
+}
\ No newline at end of file
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -N GenericHitPlotsDriver.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ GenericHitPlotsDriver.java 28 Jul 2005 19:20:14 -0000 1.1
@@ -0,0 +1,134 @@
+package org.lcsim.slic.diagnostics;
+
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+
+import org.lcsim.util.aida.AIDA;
+import hep.aida.ITree;
+
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.EventHeader.LCMetaData;
+import org.lcsim.util.Driver;
+import org.lcsim.event.SimCalorimeterHit;
+import org.lcsim.event.SimTrackerHit;
+import org.lcsim.geometry.IDDecoder;
+
+/**
+ *
+ * @author jeremym
+ */
+class GenericHitPlotsDriver extends Driver
+{
+ Map<String, GenericHitPlots> genericHitPlots = new HashMap<String,GenericHitPlots>();
+
+ AIDA aida = org.lcsim.util.aida.AIDA.defaultInstance();
+ ITree tree = aida.tree();
+
+ double trackerHitCount;
+
+ /** Creates a new instance of SingleHitCollectionPlots */
+ public GenericHitPlotsDriver()
+ {
+ /* set ref to AIDA tree */
+ tree = aida.tree();
+ }
+
+ protected void process(EventHeader event)
+ {
+ /* proc tracker colls */
+ processTrackerCollections(event);
+
+ /* proc cal colls */
+ processCalorimeterCollections(event);
+ }
+
+ private GenericHitPlots getGenericHitPlots(LCMetaData meta)
+ {
+ if ( genericHitPlots.get(meta.getName()) == null )
+ {
+ genericHitPlots.put(meta.getName(), new GenericHitPlots(meta) );
+ }
+
+ return genericHitPlots.get(meta.getName());
+ }
+
+ private void processTrackerCollections(EventHeader event)
+ {
+ List<List<SimTrackerHit>> simTrackerHitCollections = event.get(SimTrackerHit.class);
+ for ( List<SimTrackerHit> simTrackerHits : simTrackerHitCollections )
+ {
+ LCMetaData meta = event.getMetaData(simTrackerHits);
+ GenericHitPlots plots = getGenericHitPlots(meta);
+ List<GenericHit> hits = makeTrackerHits(simTrackerHits, meta);
+ plots.fill(hits);
+ }
+ }
+
+ private void processCalorimeterCollections(EventHeader event)
+ {
+ List<List<SimCalorimeterHit>> simCalorimeterHitCollections = event.get(SimCalorimeterHit.class);
+ for ( List<SimCalorimeterHit> simCalorimeterHits : simCalorimeterHitCollections)
+ {
+ LCMetaData meta = event.getMetaData(simCalorimeterHits);
+ GenericHitPlots plots = getGenericHitPlots(meta);
+ List<GenericHit> hits = makeCalorimeterHits(simCalorimeterHits, meta);
+ plots.fill(hits);
+ }
+ }
+
+ private static List<GenericHit> makeTrackerHits(List<SimTrackerHit> trackerHits, LCMetaData meta)
+ {
+ List<GenericHit> genericHits = new ArrayList<GenericHit>();
+ for (SimTrackerHit trackerHit : trackerHits)
+ {
+ GenericHit genericHit = makeTrackerHit(trackerHit, meta);
+ genericHits.add(genericHit);
+ }
+ return genericHits;
+ }
+
+ private static List<GenericHit> makeCalorimeterHits(List<SimCalorimeterHit> calHits, LCMetaData meta)
+ {
+ List<GenericHit> genericHits = new ArrayList<GenericHit>();
+ for (SimCalorimeterHit calHit : calHits)
+ {
+ GenericHit genericHit = makeCalorimeterHit(calHit, meta);
+ genericHits.add(genericHit);
+ }
+ return genericHits;
+ }
+
+ private static GenericHit makeCalorimeterHit(SimCalorimeterHit calorimeterHit, LCMetaData meta)
+ {
+ IDDecoder decoder = meta.getIDDecoder();
+ decoder.setID(calorimeterHit.getCellID() );
+ int layer = decoder.getLayer();
+
+ return new GenericHit(
+ GenericHit.HitType.CALORIMETER,
+ meta.getName(),
+ calorimeterHit.getEnergy(),
+ calorimeterHit.getPosition(),
+ layer,
+ calorimeterHit.getTime()
+ );
+ }
+
+ private static GenericHit makeTrackerHit(SimTrackerHit trackerHit, LCMetaData meta)
+ {
+ IDDecoder decoder = meta.getIDDecoder();
+ decoder.setID(trackerHit.getCellID() );
+ int layer = decoder.getLayer();
+
+ return new GenericHit(
+ GenericHit.HitType.TRACKER,
+ meta.getName(),
+ trackerHit.getdEdx(),
+ trackerHit.getPoint(),
+ layer,
+ trackerHit.getTime()
+ );
+ }
+}
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -N MCParticlePlotsDriver.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ MCParticlePlotsDriver.java 28 Jul 2005 19:20:14 -0000 1.1
@@ -0,0 +1,55 @@
+package org.lcsim.slic.diagnostics;
+
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.io.File;
+
+import org.freehep.application.Application;
+import org.freehep.application.studio.Studio;
+import org.freehep.record.loop.SequentialRecordLoop;
+import org.freehep.record.source.SequentialRecordSource;
+
+import org.lcsim.util.aida.AIDA;
+import hep.aida.ICloud1D;
+import org.lcsim.util.Driver;
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.EventHeader.LCMetaData;
+import org.lcsim.event.SimTrackerHit;
+import org.lcsim.event.SimCalorimeterHit;
+import org.lcsim.event.MCParticle;
+import org.lcsim.geometry.IDDecoder;
+import org.lcsim.event.EventHeader.LCMetaData;
+
+/**
+ *
+ * @author jeremym
+ */
+public class MCParticlePlotsDriver extends Driver
+{
+ private AIDA aida = AIDA.defaultInstance();
+
+ MCParticlePlots mcpPlots = new MCParticlePlots();
+
+ public MCParticlePlotsDriver()
+ {}
+
+ protected void process(EventHeader event)
+ {
+ super.process(event);
+
+ /* proc MCParticles coll */
+ processMCParticleCollection(event);
+ }
+
+ private void processMCParticleCollection(EventHeader event )
+ {
+ List<List<MCParticle>> mcpCollections = event.get(MCParticle.class);
+
+ for ( List<MCParticle> mcp : mcpCollections )
+ {
+ mcpPlots.fill(mcp);
+ }
+ }
+}
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -u -r1.1 -r1.2
--- CalorimeterHitPlots.java 27 Jul 2005 23:21:36 -0000 1.1
+++ CalorimeterHitPlots.java 28 Jul 2005 19:20:14 -0000 1.2
@@ -3,7 +3,6 @@
*
* Created on July 27, 2005, 11:56 AM
*/
-
package org.lcsim.slic.diagnostics;
import java.util.List;
@@ -24,9 +23,8 @@
*/
public class CalorimeterHitPlots
{
- AIDA aida = org.lcsim.util.aida.AIDA.defaultInstance();
-
- ITree tree;
+ AIDA aida = org.lcsim.util.aida.AIDA.defaultInstance();
+ ITree tree = aida.tree();;
/* plots: basic MCP */
ICloud1D mcpCountPerHit;
@@ -38,9 +36,7 @@
/** Creates a new instance of CalorimeterHitPlots */
public CalorimeterHitPlots(LCMetaData meta)
{
- collName = meta.getName();
- tree = aida.tree();
-
+ collName = meta.getName();
definePlots();
}
@@ -51,7 +47,7 @@
mcpPDG = aida.cloud1D(collName + "_MCParticlesPDGCode");
mcpSingleContribPDG = aida.cloud1D(collName + "_MCParticlesSingleContributorPDG");
tree.cd("..");
- }
+ }
public void fill(List<SimCalorimeterHit> hits)
{
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -u -r1.3 -r1.4
--- GenericHitPlots.java 27 Jul 2005 23:21:36 -0000 1.3
+++ GenericHitPlots.java 28 Jul 2005 19:20:14 -0000 1.4
@@ -1,9 +1,3 @@
-/*
- * SingleHitCollectionPlots.java
- *
- * Created on July 26, 2005, 10:44 AM
- */
-
package org.lcsim.slic.diagnostics;
import java.util.List;
@@ -13,10 +7,11 @@
import hep.aida.ICloud1D;
import hep.aida.ICloud2D;
import hep.aida.ITree;
+import org.lcsim.event.EventHeader;
import org.lcsim.event.EventHeader.LCMetaData;
-import org.lcsim.geometry.Subdetector;
+import org.lcsim.event.SimTrackerHit;
import org.lcsim.geometry.subdetector.SubdetectorIDDecoder;
-import org.lcsim.util.Driver;
+
/**
*
@@ -25,9 +20,9 @@
class GenericHitPlots
{
AIDA aida = org.lcsim.util.aida.AIDA.defaultInstance();
+ ITree tree = aida.tree();
- String collName;
- ITree tree;
+ String collName;
/* plots */
ICloud1D energy;
@@ -40,13 +35,10 @@
ICloud1D hitCount;
ICloud1D hitAvgEnergy;
ICloud1D layerEnergy;
- ICloud1D layerHitCount;
-
-// double[] layerE;
-// int[] layerHits;
+ ICloud1D layerHitCount;
int nlayers = 0;
- double eventTotEnergy = 0;
+ double eventTotEnergy = 0;
LCMetaData meta;
@@ -60,23 +52,14 @@
this.collName = meta.getName();
/* set n layers */
- nlayers = ((SubdetectorIDDecoder)meta.getIDDecoder()).getSubdetector().getLayering().getLayerCount();
-
- /* define energy per layer array */
-// layerE = new double[nlayers];
-
- /* define # hits per layer array */
-// layerHits = new int[nlayers];
-
- /* set ref to AIDA tree */
- tree = aida.tree();
+ nlayers = ((SubdetectorIDDecoder)meta.getIDDecoder()).getSubdetector().getLayering().getLayerCount();
/* make dir for these plots (if doesn't exist) */
makeDir();
/* define plots for this coll */
definePlots();
- }
+ }
private void makeDir()
{
@@ -99,14 +82,12 @@
time = aida.cloud1D(collName + "_hitTime");
thetaPhi = aida.cloud2D(collName + "_hitThetaPhi");
xy = aida.cloud2D(collName + "_hitXY");
- rz = aida.cloud2D(collName + "_hitRZ");
+ rz = aida.cloud2D(collName + "_hitRZ");
layer = aida.histogram1D(collName + "_hitLayer", nlayers, 0, nlayers);
energyEvent = aida.cloud1D(collName + "_eventEnergy");
hitCount = aida.cloud1D(collName + "_eventNumHits");
- //layerEnergy = aida.cloud1D("layersAvgEnergyEvent");
- //layerHitCount = aida.cloud1D("layersAvgHitCountEvent");
tree.cd("..");
- }
+ }
public void fill(List<GenericHit> hits)
{
@@ -138,13 +119,7 @@
/* hit layer */
layer.fill(hit.getLayer());
-
-// /* layer energy */
-// layerE[hit.getLayer()] += hit.getEnergy();
-//
-// /* layer # hits */
-// layerHits[hit.getLayer()] += 1;
-
+
/* incr tot E */
eventTotEnergy += hit.getEnergy();
@@ -162,20 +137,6 @@
double hitAvgE = eventTotEnergy / nhits;
hitAvgEnergy.fill(hitAvgE);
-// /* fill layer plots from arrays */
-// for ( int i=0; i < this.nlayers; i++)
-// {
-// /* energy by layer */
-// layerEnergy.fill(i, layerE[i]);
-//
-// /* hit count by layer*/
-// layerHitCount.fill(i, (double)layerHits[i]);
-// }
-//
-// /* reset layer arrays */
-// layerEnergy.fill(0);
-// layerHitCount.fill(0);
-//
tree.cd("..");
}
}
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -u -r1.1 -r1.2
--- HitUtil.java 27 Jul 2005 23:21:36 -0000 1.1
+++ HitUtil.java 28 Jul 2005 19:20:14 -0000 1.2
@@ -1,5 +1,5 @@
/*
- * Util.java
+ * HitUtil.java
*
* Created on July 27, 2005, 2:45 PM
*/
SlicDiagnostics/src/org/lcsim/slic/diagnostics
diff -u -r1.3 -r1.4
--- SlicDiagnosticsDriver.java 27 Jul 2005 23:21:36 -0000 1.3
+++ SlicDiagnosticsDriver.java 28 Jul 2005 19:20:14 -0000 1.4
@@ -17,16 +17,12 @@
import org.freehep.record.loop.SequentialRecordLoop;
import org.freehep.record.source.SequentialRecordSource;
-import org.lcsim.util.aida.AIDA;
-import hep.aida.ICloud1D;
import org.lcsim.util.Driver;
import org.lcsim.event.EventHeader;
-import org.lcsim.event.EventHeader.LCMetaData;
-import org.lcsim.event.SimTrackerHit;
-import org.lcsim.event.SimCalorimeterHit;
import org.lcsim.event.MCParticle;
import org.lcsim.geometry.IDDecoder;
import org.lcsim.event.EventHeader.LCMetaData;
+import org.lcsim.util.aida.AIDA;
/**
*
@@ -34,198 +30,23 @@
*/
public class SlicDiagnosticsDriver extends Driver
{
- private AIDA aida = AIDA.defaultInstance();
+ AIDA aida = AIDA.defaultInstance();
String fileName = null;
- String defaultFileName = "slicDiagnostics.aida";
-
- Map<String, GenericHitPlots> genericHitPlots = new HashMap<String,GenericHitPlots>();
- Map<String, CalorimeterHitPlots> calorimeterHitPlots = new HashMap<String,CalorimeterHitPlots>();
- MCParticlePlots mcpPlots = new MCParticlePlots();
-
- int nEvents = 0;
-
- ICloud1D eventTotalEnergy;
- ICloud1D eventHits;
- ICloud1D eventTrackerHits;
- ICloud1D eventCalorimeterHits;
- ICloud1D eventTrackerEnergy;
- ICloud1D eventCalorimeterEnergy;
-
- double eventEnergy = 0;
-
- double trackerTotalEnergy = 0;
- double calorimeterTotalEnergy = 0;
+ String defaultFileName = "slicDiagnostics.aida";
- double trackerHitCount = 0;
- double calorimeterHitCount = 0;
-
- /** Creates a new instance of SlicDiagnosticsDriver */
public SlicDiagnosticsDriver()
- {
- eventTotalEnergy = aida.cloud1D("eventEnergy");
- eventHits = aida.cloud1D("eventHits");
- eventTrackerHits = aida.cloud1D("eventTrackerHits");
- eventCalorimeterHits = aida.cloud1D("eventCalorimeterHits");
- eventTrackerEnergy = aida.cloud1D("eventTrackerEnergy");
- eventCalorimeterEnergy = aida.cloud1D("eventCalorimeterEnergy");
- }
+ {}
+ /** Call child drivers. */
protected void process(EventHeader event)
{
- /* reset hit counters */
- trackerHitCount = calorimeterHitCount = 0;
-
- /* proc tracker colls */
- processTrackerCollections(event);
-
- /* proc cal colls */
- processCalorimeterCollections(event);
-
- /* proc MCParticles coll */
- processMCParticleCollection(event);
-
- /* event total energy */
- eventEnergy = 0;
- for ( GenericHitPlots plots : genericHitPlots.values() )
- {
- eventEnergy += plots.getEventEnergy();
- }
-
- /* fill event plots */
- eventTotalEnergy.fill(eventEnergy);
- eventTrackerHits.fill(trackerHitCount);
- eventCalorimeterHits.fill(calorimeterHitCount);
- eventHits.fill(trackerHitCount + calorimeterHitCount);
- eventTrackerEnergy.fill(trackerTotalEnergy);
- eventCalorimeterEnergy.fill(calorimeterTotalEnergy);
-
- /* incr tot n events */
- ++nEvents;
- }
-
- private void processMCParticleCollection(EventHeader event )
- {
- List<List<MCParticle>> mcpCollections = event.get(MCParticle.class);
-
- for ( List<MCParticle> mcp : mcpCollections )
- {
- mcpPlots.fill(mcp);
- }
- }
-
- private GenericHitPlots getGenericHitPlots(LCMetaData meta)
- {
- if ( genericHitPlots.get(meta.getName()) == null )
- {
- genericHitPlots.put(meta.getName(), new GenericHitPlots(meta) );
- }
-
- return genericHitPlots.get(meta.getName());
- }
-
- private CalorimeterHitPlots getCalorimeterHitPlots(LCMetaData meta)
- {
- if ( calorimeterHitPlots.get(meta.getName()) == null )
- {
- calorimeterHitPlots.put(meta.getName(), new CalorimeterHitPlots(meta) );
- }
-
- return calorimeterHitPlots.get(meta.getName());
- }
-
- private void processTrackerCollections(EventHeader event)
- {
- trackerTotalEnergy = 0;
- List<List<SimTrackerHit>> simTrackerHitCollections = event.get(SimTrackerHit.class);
- for ( List<SimTrackerHit> simTrackerHits : simTrackerHitCollections )
- {
- /* generic plots */
- LCMetaData meta = event.getMetaData(simTrackerHits);
- GenericHitPlots plots = getGenericHitPlots(meta);
- List<GenericHit> hits = makeTrackerHits(simTrackerHits, meta);
- plots.fill(hits);
-
- trackerHitCount += simTrackerHits.size();
- trackerTotalEnergy += plots.getEventEnergy();
- }
- }
-
- private void processCalorimeterCollections(EventHeader event)
- {
- calorimeterTotalEnergy = 0;
- List<List<SimCalorimeterHit>> simCalorimeterHitCollections = event.get(SimCalorimeterHit.class);
- for ( List<SimCalorimeterHit> simCalorimeterHits : simCalorimeterHitCollections)
- {
- /* generic plots*/
- LCMetaData meta = event.getMetaData(simCalorimeterHits);
- GenericHitPlots plots = getGenericHitPlots(meta);
- List<GenericHit> hits = makeCalorimeterHits(simCalorimeterHits, meta);
- plots.fill(hits);
-
- /* cal plots */
- CalorimeterHitPlots calPlots = getCalorimeterHitPlots(meta);
- calPlots.fill(simCalorimeterHits);
-
- /* incr hit count */
- calorimeterHitCount += simCalorimeterHits.size();
-
- /* add to total cal E */
- calorimeterTotalEnergy += plots.getEventEnergy();
- }
- }
-
- private static List<GenericHit> makeTrackerHits(List<SimTrackerHit> trackerHits, LCMetaData meta)
- {
- List<GenericHit> genericHits = new ArrayList<GenericHit>();
- for (SimTrackerHit trackerHit : trackerHits)
- {
- GenericHit genericHit = makeTrackerHit(trackerHit, meta);
- genericHits.add(genericHit);
- }
- return genericHits;
- }
-
- private static List<GenericHit> makeCalorimeterHits(List<SimCalorimeterHit> calHits, LCMetaData meta)
- {
- List<GenericHit> genericHits = new ArrayList<GenericHit>();
- for (SimCalorimeterHit calHit : calHits)
- {
- GenericHit genericHit = makeCalorimeterHit(calHit, meta);
- genericHits.add(genericHit);
- }
- return genericHits;
- }
-
- private static GenericHit makeCalorimeterHit(SimCalorimeterHit calorimeterHit, LCMetaData meta)
- {
- IDDecoder decoder = meta.getIDDecoder();
- decoder.setID(calorimeterHit.getCellID() );
- int layer = decoder.getLayer();
-
- return new GenericHit(
- GenericHit.HitType.CALORIMETER,
- meta.getName(),
- calorimeterHit.getEnergy(),
- calorimeterHit.getPosition(),
- layer,
- calorimeterHit.getTime()
- );
- }
+ super.process(event);
+ }
- private static GenericHit makeTrackerHit(SimTrackerHit trackerHit, LCMetaData meta)
+ /** Set the filename to argument basename with ".slcio" replaced by ".aida". */
+ public void setFileName(String path)
{
- IDDecoder decoder = meta.getIDDecoder();
- decoder.setID(trackerHit.getCellID() );
- int layer = decoder.getLayer();
-
- return new GenericHit(
- GenericHit.HitType.TRACKER,
- meta.getName(),
- trackerHit.getdEdx(),
- trackerHit.getPoint(),
- layer,
- trackerHit.getTime()
- );
+ fileName = (new File(path)).getName().replace(".slcio",".aida");
}
protected void startOfData()
@@ -265,11 +86,5 @@
{
throw new RuntimeException("Problem committing tree.", e);
}
- }
-
- /** set filename to basename with ".slcio" replaced by ".aida" */
- public void setFileName(String path)
- {
- fileName = (new File(path)).getName().replace(".slcio",".aida");
- }
+ }
}
SlicDiagnostics/test/org/lcsim/slic/diagnostics
diff -u -r1.3 -r1.4
--- SlicDiagnosticsTest.java 27 Jul 2005 23:21:37 -0000 1.3
+++ SlicDiagnosticsTest.java 28 Jul 2005 19:20:15 -0000 1.4
@@ -17,23 +17,45 @@
public class SlicDiagnosticsTest extends TestCase
{
private int recordCount = 0;
+
+ SlicDiagnosticsDriver slicDiag;
+ GenericHitPlotsDriver genericPlots;
+ MCParticlePlotsDriver mcpPlots;
+ CalorimeterHitPlotsDriver calPlots;
+ EventSummaryPlotsDriver evtPlots;
+
+ protected void setUp() throws Exception
+ {
+ /* main driver */
+ slicDiag = new SlicDiagnosticsDriver();
+ /* subdrivers */
+ genericPlots = new GenericHitPlotsDriver();
+ mcpPlots = new MCParticlePlotsDriver();
+ calPlots = new CalorimeterHitPlotsDriver();
+ evtPlots = new EventSummaryPlotsDriver();
+
+ /* add subdrivers to main driver */
+ slicDiag.add(evtPlots);
+ slicDiag.add(genericPlots);
+ slicDiag.add(mcpPlots);
+ slicDiag.add(calPlots);
+ }
+
private void runTestFile(String s) throws Exception
{
System.out.println("Running SlicDiagnosticsTest on file: " + s);
+ slicDiag.setFileName(s);
+
URL url = new URL(s);
FileCache cache = new FileCache();
File file = cache.getCachedFile(url);
-
- recordCount = 0;
+
LCSimLoop loop = new LCSimLoop();
loop.setLCIORecordSource(file);
- SlicDiagnosticsDriver slicDiag = new SlicDiagnosticsDriver();
- slicDiag.setFileName(s);
loop.add(slicDiag);
- loop.loop(-1);
-// loop.loop(5);
+ loop.loop(-1);
loop.dispose();
}
@@ -42,7 +64,7 @@
runTestFile("http://www.lcsim.org/test/lcio/ZPoleUDS_50evt_SLIC_v1r9p1_sidmay05.slcio");
//runTestFile("http://www.lcsim.org/test/lcio/muons_SLIC_v1r9p1_sidmay05.slcio");
}
-
+
public SlicDiagnosticsTest(String testName)
{
super(testName);
@@ -51,8 +73,5 @@
public static Test suite()
{
return new TestSuite(SlicDiagnosticsTest.class);
- }
-
- protected void setUp() throws Exception
- {}
+ }
}
\ No newline at end of file
CVSspam 0.2.8