lcsim/src/org/lcsim/contrib/uiowa
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;