Commit in lcsim/src/org/lcsim/contrib/uiowa on MAIN
NonTrivialPFA.java+32-61.5 -> 1.6
MJC: Code to allow use of Steve's cheat/perfect track list

lcsim/src/org/lcsim/contrib/uiowa
NonTrivialPFA.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- NonTrivialPFA.java	20 Apr 2007 22:46:15 -0000	1.5
+++ NonTrivialPFA.java	23 Apr 2007 22:33:35 -0000	1.6
@@ -143,12 +143,38 @@
 	    String nonCheatingTrackList = EventHeader.TRACKS;
 	    
 	    // Find tracks (cheating)
-	    // Output: CombinedTracks (type CheatTrack)
-	    // Warning: This doesn't work!
-	    //// org.lcsim.recon.ztracking.cheater.TrackingCheater trackCheater = new org.lcsim.recon.ztracking.cheater.TrackingCheater();
-	    //// trackCheater.setUseFinalStateParticles(true);
-	    //// add(trackCheater);
-	    //// String cheatingTrackList = new String("CombinedTracks");
+            // Code taken from Steve Magill
+            String cheatingTrackList = "PerfectTracks";
+            {
+                // Make cheat tracks and cheat clusters
+                String Tname = "RefinedCheatTracks";
+                add(new org.lcsim.recon.tracking.cheat.CheatTrackDriver());
+                String Cname = "PerfectCheatClusters";
+                String[] collections = {"EcalBarrDigiHits","EcalEndcapDigiHits","HcalBarrDigiHits","HcalEndcapDigiHits"};
+                add (new org.lcsim.recon.cluster.cheat.CheatClusterDriver(collections,Cname));
+		
+                // Make cheat reconstructed particles from cheat tracks and cheat clusters
+                String CRPname = "CheatReconstructedParticles";
+                org.lcsim.recon.particle.CheatParticleDriver cpd = new org.lcsim.recon.particle.CheatParticleDriver(Cname,Tname,mcListNameSim);
+                //  Inputs Cheated Tracks, Cheated Clusters, and MC particle list to create Cheated Particles
+                cpd.setOutputName(CRPname);
+                add(cpd);
+                
+                // Make perfect particles from cheat reconstructed particles
+                String outName = "PerfectRecoParticles";
+                int minT = 0;
+                int minC = 0;
+                org.lcsim.contrib.Cassell.recon.Cheat.PPRParticleDriver d = new org.lcsim.contrib.Cassell.recon.Cheat.PPRParticleDriver(CRPname, outName);
+                d.setMinTrackerHits(minT);
+                d.setMinCalorimeterHits(minC);
+                add(d);
+		
+                // Make perfect tracks from perfect particles
+                org.lcsim.contrib.SteveMagill.PerfectTrackDriver perftrk = new org.lcsim.contrib.SteveMagill.PerfectTrackDriver();
+                perftrk.setParticleNames(outName);
+                perftrk.setTrackNames(cheatingTrackList);
+                add(perftrk);
+            }
 	    
 	    // Choose which track list to use
 	    trackList = nonCheatingTrackList;
CVSspam 0.2.8