Commit in lcsim-contrib/src/main/java/org/lcsim/contrib/SteveMagill on MAIN
TrackToRPDriver.java+90added 1.1

lcsim-contrib/src/main/java/org/lcsim/contrib/SteveMagill
TrackToRPDriver.java added at 1.1
diff -N TrackToRPDriver.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ TrackToRPDriver.java	14 Feb 2012 19:25:38 -0000	1.1
@@ -0,0 +1,90 @@
+package org.lcsim.contrib.SteveMagill;
+
+import hep.physics.vec.BasicHep3Vector;
+import hep.physics.vec.Hep3Vector;
+import hep.physics.particle.properties.ParticlePropertyManager;
+import hep.physics.particle.properties.ParticleType;
+import java.util.*;
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.base.BaseReconstructedParticle;
+import org.lcsim.util.Driver;
+import org.lcsim.util.aida.AIDA;
+import org.lcsim.event.Track;
+import org.lcsim.event.ParticleID;
+import org.lcsim.event.ReconstructedParticle;
+import org.lcsim.event.base.BaseParticleID;
+/*
+ * SimpleClusterToReconstructedParticleExampleDriver.java
+ *
+ * Created on March 29, 2007, 1:52 PM
+ *
+ * $Id: TrackToRPDriver.java,v 1.1 2012/02/14 19:25:38 magill Exp $
+ */
+
+/**
+ *
+ * @author Norman Graf
+ */
+public class TrackToRPDriver extends Driver
+{
+    private AIDA aida = AIDA.defaultInstance();
+    private String _tracknames;
+    private String _Trrecoparticles;
+    private ParticleType pitype;
+    
+    /** Creates a new instance of SimpleClusterToReconstructedParticleExampleDriver */
+    public TrackToRPDriver()
+    {
+
+    }
+    
+    protected void process(EventHeader event)
+    {
+
+        // array of ReconstructedParticles to add to the event...
+        List<ReconstructedParticle> rpList = new ArrayList<ReconstructedParticle>();
+
+        try
+        {
+        //  get tracks
+        List<Track> tracks = event.get(Track.class,_tracknames);
+        for (Track tr : tracks)
+        {
+            double pimass = 0.13957;
+            double TrE = Math.sqrt(tr.getPX()*tr.getPX()+tr.getPY()*tr.getPY()+tr.getPZ()*tr.getPZ()+pimass*pimass);
+            Hep3Vector mom = new BasicHep3Vector(tr.getPX(), tr.getPY(), tr.getPZ());
+            BaseReconstructedParticle rp = new BaseReconstructedParticle(TrE, mom);
+            rp.setMass(pimass);
+            rp.setCharge(tr.getCharge());
+            //  all pions for now (211 or -211)
+            if (tr.getCharge()>0) pitype = ParticlePropertyManager.getParticlePropertyProvider().get(211);
+            if (tr.getCharge()<0) pitype = ParticlePropertyManager.getParticlePropertyProvider().get(-211);
+            ParticleID id = new BaseParticleID(pitype);
+            rp.addParticleID(id);
+            rp.setParticleIdUsed(id);
+            rp.addTrack(tr);
+            rpList.add(rp);
+        }
+
+        }
+        catch(java.lang.IllegalArgumentException ex)
+        {
+          System.out.println("requested object not found in event " + _tracknames);
+        }
+
+        // add the list of rps to the event...
+        event.put(_Trrecoparticles,rpList, ReconstructedParticle.class,0);
+        //some simple histograms...
+//        aida.cloud1D("Number of AllRecoParticles found").fill(rpList.size());
+        
+    }
+    
+  public void setInputTrackList(String tracknames)
+  {
+      _tracknames = tracknames;
+  }
+  public void setTrRPName(String Trrecoparticles)
+  {
+      _Trrecoparticles = Trrecoparticles;
+  }
+}
\ No newline at end of file
CVSspam 0.2.12


Use REPLY-ALL to reply to list

To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1