Commit in lcsim/src/org/lcsim/contrib/RobKutschke/TKNHits on MAIN
TKNClusterMakerDriverV1.java+83added 1.1
First release.

lcsim/src/org/lcsim/contrib/RobKutschke/TKNHits
TKNClusterMakerDriverV1.java added at 1.1
diff -N TKNClusterMakerDriverV1.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ TKNClusterMakerDriverV1.java	21 Nov 2007 22:55:46 -0000	1.1
@@ -0,0 +1,83 @@
+package org.lcsim.contrib.RobKutschke.TKNHits;
+
+import java.util.List;
+
+import org.lcsim.util.Driver;
+
+import org.lcsim.event.EventHeader;
+import org.lcsim.event.RawTrackerHit;
+import org.lcsim.event.TrackerHit;
+
+import org.lcsim.contrib.SiStripSim.ClusterMaker;
+import org.lcsim.contrib.SiStripSim.Kpix;
+import org.lcsim.contrib.SiStripSim.ReadoutChip;
+import org.lcsim.contrib.SiStripSim.StripClusterMaker;
+
+/**
+ *
+ * Driver to run Tim's cluster maker code and add clusters (as TrackerHits) 
+ * to the event.
+ *
+ *@author $Author: kutschke $
+ *@version $Id: TKNClusterMakerDriverV1.java,v 1.1 2007/11/21 22:55:46 kutschke Exp $
+ *
+ * Date $Date: 2007/11/21 22:55:46 $
+ *
+ */
+
+public class TKNClusterMakerDriverV1 extends Driver
+{
+
+    // Names of input and output collections.
+    private String[] input  = null;
+    private String[] output = null;
+
+    // Object that can interpret raw data to return charge, noise etc.
+    // Someday this will be (sub)detector dependent.
+    ReadoutChip readout = new Kpix();
+
+    // Code to make clusters from Raw hits.
+    ClusterMaker cluster_maker = new StripClusterMaker(readout);
+
+    /**
+     * Constructor:
+     *
+     */
+    public TKNClusterMakerDriverV1( String[] in, String[] out ){
+
+	input  = in;
+	output = out;
+
+	// If lengths of arrays are not equal, abort.
+        if ( in.length != out.length ){
+            System.out.println ("Fatal error from TKNClusterMakerDriverV1.  Different length lists for input and outputs!");
+            System.out.println ("Number of inputs/outputs: " + input.length + "/" + output.length );
+            System.out.println ("Inputs:  " + input );
+            System.out.println ("Outputs: " + output );
+            System.exit(-1);
+        }
+
+    }
+
+   
+    /**
+     *  Make the clusters and add them to the event.
+     *
+     */
+    protected void process(EventHeader header){
+
+	// Loop over all of the collections to process.
+        for ( int i=0; i<input.length; ++i ){
+
+	    // Get the list of RawTrackerHits from the event.
+	    List<RawTrackerHit> rawhits = header.get(RawTrackerHit.class, input[i] );
+	
+	    // Make clusters.
+	    List<TrackerHit> trkhits = cluster_maker.makeClusters(rawhits);
+
+	    // Add the clusters to the event.
+	    header.put(output[i], trkhits, TrackerHit.class, 0, "Kpix");
+
+	}
+    }
+} 
CVSspam 0.2.8