Print

Print


Commit in lcsim/src/org/lcsim/recon/pfa/analysis on MAIN
ExampleAnalysisDriver.java+17-51.1 -> 1.2
Compatability with sidloi3 updates

lcsim/src/org/lcsim/recon/pfa/analysis
ExampleAnalysisDriver.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- ExampleAnalysisDriver.java	12 Dec 2008 22:27:59 -0000	1.1
+++ ExampleAnalysisDriver.java	7 May 2010 19:04:26 -0000	1.2
@@ -17,6 +17,9 @@
 import org.lcsim.recon.cheater.PPRDriver;
 import org.lcsim.util.Driver;
 import org.lcsim.util.aida.AIDA;
+import org.lcsim.recon.util.CalorimeterInformation;
+import org.lcsim.geometry.Calorimeter.CalorimeterType;
+import org.lcsim.recon.util.CalInfoDriver;
 
 /**
  *
@@ -33,8 +36,6 @@
     String CheatReconFSname = "ReconFSParticles";
     String CheatReconFSTrackedname = "TrackedReconFSParticles";
     String PPRPflowRname = "PPRReconParticles";
-    String[] DigisimCollectionNames =
-    {"EcalBarrDigiHits", "EcalEndcapDigiHits","HcalBarrDigiHits", "HcalEndcapDigiHits"};
     String[] ClustersFromReconnames;
     String[] ClusterFromCheatReconRname;
     String[] ClusterFromPPRPflowRname;
@@ -54,9 +55,11 @@
     
     int ievt;
     int nmax = 1000000;
+    CalorimeterInformation ci;
     /** Creates a new instance of ExampleAnalysisDriver */
     public ExampleAnalysisDriver()
     {
+        add(new CalInfoDriver());
 //
 // Do the cheating reconstruction (includes Digisim)
 //
@@ -82,9 +85,6 @@
         add(GenFSEnergies);
         ReconFSEnergies = new FSParticleCollectionEnergies(CheatReconFSname,CheatReconFSTrackedname,true);
         add(ReconFSEnergies);
-        AllCalHitEnergies = new CalorimeterHitCollectionEnergies(
-            "AllCalHits",CheatReconFSname,CheatReconFSTrackedname,DigisimCollectionNames,true);
-        add(AllCalHitEnergies);
         PerfectReconEnergies = new ReconstructedParticleCollectionEnergies(
             CheatReconFSname,CheatReconFSTrackedname,CheatReconRname, true);
         add(PerfectReconEnergies);
@@ -115,6 +115,18 @@
     }
     protected void process(EventHeader event)
     {
+        if(ci == null)
+        {
+            ci = CalorimeterInformation.instance();
+            String[] DigisimCollectionNames =
+                {ci.getDigiCollectionName(CalorimeterType.EM_BARREL),
+                 ci.getDigiCollectionName(CalorimeterType.EM_ENDCAP),
+                 ci.getDigiCollectionName(CalorimeterType.HAD_BARREL),
+                 ci.getDigiCollectionName(CalorimeterType.HAD_ENDCAP)};
+            AllCalHitEnergies = new CalorimeterHitCollectionEnergies(
+                "AllCalHits",CheatReconFSname,CheatReconFSTrackedname,DigisimCollectionNames,true);
+            add(AllCalHitEnergies);
+        }
 //
 // Process events with both quarks costheta < .8
 //
CVSspam 0.2.8