lcsim/src/org/lcsim/contrib/Cassell/recon/Cheat
diff -N PPRParticleDriver.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ PPRParticleDriver.java 2 Mar 2007 16:42:44 -0000 1.1
@@ -0,0 +1,63 @@
+/*
+ * PPRParticleDriver.java
+ *
+ * Created on March 2, 2007, 6:11 AM
+ *
+ * To change this template, choose Tools | Options and locate the template under
+ * the Source Creation and Management node. Right-click the template and choose
+ * Open. You can then make changes to the template in the Source Editor.
+ */
+package org.lcsim.contrib.Cassell.recon.Cheat;
+
+import org.lcsim.util.Driver;
+import java.util.ArrayList;
+import java.util.List;
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.ReconstructedParticle;
+import org.lcsim.event.base.MCReconstructedParticle;
+
+/**
+ *
+ * @author cassell
+ */
+public class PPRParticleDriver extends Driver
+{
+
+ String inlist;
+ String outlist;
+ int minThits = 4;
+ int minChits = 3;
+ PPRReconParticleConstructor crpc;
+ /** Creates a new instance of PPRParticleDriver */
+ public PPRParticleDriver(String in,String out)
+ {
+ inlist = in;
+ outlist = out;
+ }
+ public void setMinTrackerHits(int n)
+ {
+ minThits = n;
+ }
+ public void setMinCalorimeterHits(int n)
+ {
+ minChits = n;
+ }
+ protected void process(EventHeader event)
+ {
+ List<MCReconstructedParticle> rl = event.get(MCReconstructedParticle.class,inlist);
+ List<ReconstructedParticle>outrl = new ArrayList<ReconstructedParticle>();
+ crpc.setMinTrackerHits(minThits);
+ crpc.setMinCalorimeterHits(minChits);
+ for(MCReconstructedParticle p:rl)
+ {
+ ReconstructedParticle rp = crpc.makeReconParticle(p.getMCParticle(),p.getClusters(),p.getTracks());
+ if(rp.getEnergy() > 0.)
+ {
+ rp.addParticle(p);
+ outrl.add(rp);
+ }
+ }
+ event.put(outlist,outrl,ReconstructedParticle.class,0);
+ }
+
+}