lcsim/src/org/lcsim/contrib/uiowa/template
diff -u -r1.3 -r1.4
--- TrivialPFA.java 25 Jan 2006 00:56:27 -0000 1.3
+++ TrivialPFA.java 26 Jan 2006 01:27:43 -0000 1.4
@@ -5,27 +5,50 @@
import org.lcsim.event.util.*;
import java.util.*;
+import org.lcsim.recon.cluster.util.CalHitMapDriver;
+import org.lcsim.digisim.DigiSimDriver;
+import org.lcsim.digisim.CalorimeterHitsDriver;
+
public class TrivialPFA extends Driver
{
public TrivialPFA()
{
- // You might run digisim here
- // [digisim]
+ // Set up and run DigiSim, based on org.lcsim.plugin.web.examples.DigiSimExample:
+ // CalHitMapDriver is needed by DigiSim
+ add(new org.lcsim.recon.cluster.util.CalHitMapDriver());
+ // DigiSim: SimCalHits -> RawCalHits
+ org.lcsim.digisim.DigiSimDriver digi = new org.lcsim.digisim.DigiSimDriver();
+ add(digi);
+ // RawCalHits -> SimCalorimeterHits
+ add( new org.lcsim.digisim.SimCalorimeterHitsDriver() );
+
+ // Set up a hitmap for the raw hits
+ HitMapDriver rawHitMap = new HitMapDriver();
+ rawHitMap.addInputList("EcalBarrHits");
+ rawHitMap.addInputList("EcalEndcapHits");
+ rawHitMap.addInputList("HcalBarrHits");
+ rawHitMap.addInputList("HcalEndcapHits");
+ rawHitMap.setOutput("raw hitmap");
+ add(rawHitMap);
- // Set up the hitmaps.
- HitMapDriver hitmaps = new HitMapDriver();
- hitmaps.addInputList("EcalBarrHits");
- hitmaps.addInputList("EcalEndcapHits");
- hitmaps.addInputList("HcalBarrHits");
- hitmaps.addInputList("HcalEndcapHits");
- hitmaps.setOutput("hits");
- add(hitmaps);
+ // Set up a hitmap for the digisim output hits
+ HitMapDriver digiHitMap = new HitMapDriver();
+ digiHitMap.addInputList("EcalBarrDigiHits");
+ digiHitMap.addInputList("EcalEndcapDigiHits");
+ digiHitMap.addInputList("HcalBarrDigiHits");
+ digiHitMap.addInputList("HcalEndcapDigiHits");
+ digiHitMap.setOutput("digi hitmap");
+ add(digiHitMap);
// Do hit map -> hit list conversion
- HitMapConverter converterDriver = new HitMapConverter();
- converterDriver.setInputHitMap("hits");
- converterDriver.setOutputList("hits (displayable)");
- add(converterDriver);
+ HitMapConverter rawConverterDriver = new HitMapConverter();
+ rawConverterDriver.setInputHitMap("raw hitmap");
+ rawConverterDriver.setOutputList("raw hits (displayable)");
+ add(rawConverterDriver);
+ HitMapConverter digiConverterDriver = new HitMapConverter();
+ digiConverterDriver.setInputHitMap("digi hitmap");
+ digiConverterDriver.setOutputList("digi hits (displayable)");
+ add(digiConverterDriver);
// Set up the MC list
CreateFinalStateMCParticleList mcListMaker = new CreateFinalStateMCParticleList("Gen");
@@ -33,7 +56,7 @@
// Cluster the hits (perfect pattern recognition)
PerfectClusterer clusterer = new PerfectClusterer();
- clusterer.setInputHitMap("hits");
+ clusterer.setInputHitMap("digi hitmap");
clusterer.setOutputHitMap("leftover hits");
clusterer.setOutputClusterList("perfect clusters");
clusterer.setMCParticleList("GenFinalStateParticles");
@@ -47,7 +70,8 @@
// add(id); // Doesn't render well in Event Display
// Some debug output
- add(new DebugInfoHitMap("hits"));
+ add(new DebugInfoHitMap("raw hitmap"));
+ add(new DebugInfoHitMap("digi hitmap"));
add(new DebugInfoHitMap("leftover hits"));
add(new DebugInfoClusterList("perfect clusters"));
// add(new DebugInfoParticleList("perfect particles"));