Commit in lcsim-contrib/src/main/java/org/lcsim/contrib/Partridge/sATLASDigi on MAIN
ExampleDriver.java+67added 1.1
MyDigiHitMaker.java+50added 1.1
TrackerHitDriver_sATLAS.java+70added 1.1
+187
3 added files
Planar driver code

lcsim-contrib/src/main/java/org/lcsim/contrib/Partridge/sATLASDigi
ExampleDriver.java added at 1.1
diff -N ExampleDriver.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ ExampleDriver.java	20 Feb 2009 22:43:51 -0000	1.1
@@ -0,0 +1,67 @@
+package org.lcsim.contrib.mgraham.sATLASDigi;
+
+import hep.physics.vec.VecOp;
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+import java.util.List;
+import org.freehep.record.loop.LoopException;
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.MCParticle;
+import org.lcsim.util.Driver;
+import org.lcsim.util.aida.AIDA;
+import org.lcsim.util.cache.FileCache;
+import org.lcsim.util.loop.LCSimLoop;
+
+public class ExampleDriver extends Driver {
+
+    private static AIDA aida = AIDA.defaultInstance();
+
+    /**
+     * This method is called for each event analysed
+     * @param event The event.
+     */
+    @Override
+    protected void process(EventHeader event) {
+        // Place your analysis code here
+        // Get the list of MCParticles from the event
+        List<MCParticle> particles = event.get(MCParticle.class, event.MC_PARTICLES);
+        // Histogram the number of particles per event
+        aida.cloud1D("nTracks").fill(particles.size());
+        // Loop over the particles
+        for (MCParticle particle : particles) {
+            aida.cloud1D("energy").fill(particle.getEnergy());
+            aida.cloud1D("cosTheta").fill(VecOp.cosTheta(particle.getMomentum()));
+            aida.cloud1D("phi").fill(VecOp.phi(particle.getMomentum()));
+        }
+    }
+
+    /**
+     * A main routine which allows this to run outside of JAS
+     */
+    public static void main(String[] args) throws IOException, LoopException {
+
+        LCSimLoop loop = new LCSimLoop();
+
+        // Download example file and set as input file
+        URL url = new URL("http://www.lcsim.org/test/lcio/muons_SLIC_v1r9p1_sidmay05.slcio");
+        FileCache cache = new FileCache();
+        File file = cache.getCachedFile(url);
+        loop.setLCIORecordSource(file);
+
+        // Or to read a local slcio file
+        //loop.setLCIORecordSource(new File("myFile.slcio"));
+        // Or to read a local stdhep file
+        //loop.setStdhepRecordSource(new File("myFile.stdhep"),"sid01");
+        // Or to read a list of files
+        //loop.setLCIORecordSource(new LCIOEventSource(new FileList(new File("myFileList.filelist"),"My File List")));
+        loop.add(new ExampleDriver());
+        loop.loop(100); // 0 means loop forever
+        loop.dispose();
+
+        File outFile = new File(new File(System.getProperty("user.home")),"sATLASDigi.aida");
+        aida.saveAs(outFile);
+        System.out.println("Histograms stored in "+outFile.getAbsolutePath());
+
+    }
+}

lcsim-contrib/src/main/java/org/lcsim/contrib/Partridge/sATLASDigi
MyDigiHitMaker.java added at 1.1
diff -N MyDigiHitMaker.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ MyDigiHitMaker.java	20 Feb 2009 22:43:52 -0000	1.1
@@ -0,0 +1,50 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.lcsim.contrib.Partridge.sATLASDigi;
+
+import java.util.List;
+//import org.lcsim.recon.tracking.digitization.sistripsim.TrackerHitDriver_User;
+import org.lcsim.recon.vertexing.pixsim.PixilatedSensorManager;
+import org.lcsim.recon.vertexing.pixsim.SensorOption;
+import org.lcsim.fit.helicaltrack.HelicalTrackHitDriver;
+import org.lcsim.fit.helicaltrack.HelicalTrackHitDriver.HitType;
+import org.lcsim.recon.tracking.seedtracker.SeedStrategy;
+import org.lcsim.recon.tracking.seedtracker.SeedTracker;
+import org.lcsim.recon.tracking.seedtracker.StrategyXMLUtils;
+import org.lcsim.util.Driver;
+
+/**
+ *
+ * @author cozzy
+ */
+public class MyDigiHitMaker extends Driver {
+
+    public MyDigiHitMaker() {
+
+        //Initialize Nick's Pixel hit making code
+        PixilatedSensorManager psm = new PixilatedSensorManager(SensorOption.ClassicCCD, true);
+        add(psm);
+
+//            //Initialize Tim's TrackerHit making code
+        TrackerHitDriver_sATLAS thd = new TrackerHitDriver_sATLAS();
+        add(thd);
+
+        HelicalTrackHitDriver hitdriver = new HelicalTrackHitDriver();
+        hitdriver.addCollection(((TrackerHitDriver_sATLAS) thd).getStripHits1DName(), HitType.Digitized);
+        hitdriver.addCollection("RecVtxBarrHits", HitType.Base);
+        hitdriver.addCollection("RecVtxEndcapHits", HitType.Base);
+
+        hitdriver.OutputCollection("HelicalTrackHits"); // the default, but it might change?
+        add(hitdriver);
+
+        //  Retrieve the track finder's strategy list
+        String sfile = "sATLASBarrel-SM08.xml";
+        List<SeedStrategy> slist = StrategyXMLUtils.getStrategyListFromResource(
+                StrategyXMLUtils.getDefaultStrategiesPrefix() + sfile);
+
+        SeedTracker st = new SeedTracker(slist);
+        add(st);
+    }
+}

lcsim-contrib/src/main/java/org/lcsim/contrib/Partridge/sATLASDigi
TrackerHitDriver_sATLAS.java added at 1.1
diff -N TrackerHitDriver_sATLAS.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ TrackerHitDriver_sATLAS.java	20 Feb 2009 22:43:52 -0000	1.1
@@ -0,0 +1,70 @@
+/*
+ * TrackerHitDriver_User.java
+ *
+ * Created on April 4, 2008, 4:13 PM
+ *
+ * To change this template, choose Tools | Template Manager
+ * and open the template in the editor.
+ */
+
+package org.lcsim.contrib.Partridge.sATLASDigi;
+import org.lcsim.recon.tracking.digitization.sistripsim.TrackerHitDriver;
+
+import org.lcsim.util.Driver;
+
+/**
+ *
+ * @author tknelson
+ */
+public class TrackerHitDriver_sATLAS extends Driver
+{
+    
+    TrackerHitDriver _trackerhit_driver;
+    
+    /** Creates a new instance of TrackerHitDriver_sATLAS */
+    public TrackerHitDriver_sATLAS()
+    {
+        _trackerhit_driver = new TrackerHitDriver();
+        
+       // _trackerhit_driver.addReadout("VtxBarrHits");
+        _trackerhit_driver.addReadout("SCTShortBarrHits");
+        _trackerhit_driver.addReadout("SCTLongBarrHits");
+        //_trackerhit_driver.addReadout("VtxEndcapHits");
+//        _trackerhit_driver.addReadout("SCTShortEndcapHits");
+//        _trackerhit_driver.addReadout("SCTLongEndcapHits");
+
+        //_trackerhit_driver.addElementToProcess("VtxPixelBarrel");
+        _trackerhit_driver.addElementToProcess("SCTShortBarrel");
+        _trackerhit_driver.addElementToProcess("SCTLongBarrel");
+        //_trackerhit_driver.addElementToProcess("VtxPixelEndcap");
+//        _trackerhit_driver.addElementToProcess("SCTShortEndcap");
+//        _trackerhit_driver.addElementToProcess("SCTLongEndcap");
+ 
+        
+        super.add( _trackerhit_driver );
+    }
+    
+    // Collection names
+    //-----------------
+    public String getRawHitsName()
+    {
+        return _trackerhit_driver.getRawHitsName();
+    }
+    
+    public String getStripHits1DName()
+    {
+        return _trackerhit_driver.getStripHits1DName();
+    }
+    
+//    public String getPixelHitsName()
+//    {
+//        return _trackerhit_driver.getPixelHitsName();
+//    }
+    
+    public String getStripHits2DName()
+    {
+        return _trackerhit_driver.getStripHits2DName();
+    }
+    
+    
+}
CVSspam 0.2.8