Commit in hps-java/src/main on MAIN
java/org/lcsim/hps/recon/tracking/HPSSVTData.java+141-1371.5 -> 1.6
                                 /SVTDataToRawTrackerHitDriver.java+71-641.5 -> 1.6
                                 /HPSSVTRawTrackerHitMaker.java-1361.2 removed
resources/org/lcsim/hps/steering/TestRunMonitoring.lcsim+1-11.6 -> 1.7
                                /OnlineTracking.lcsim+21.1 -> 1.2
java/org/lcsim/hps/evio/SVTEvioReader.java+3-31.3 -> 1.4
+218-341
1 removed + 5 modified, total 6 files
merge two redundant drivers

hps-java/src/main/java/org/lcsim/hps/recon/tracking
HPSSVTData.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- HPSSVTData.java	25 Apr 2012 05:10:19 -0000	1.5
+++ HPSSVTData.java	28 Apr 2012 15:25:41 -0000	1.6
@@ -1,4 +1,3 @@
-
 package org.lcsim.hps.recon.tracking;
 
 //--- Constants ---//
@@ -9,187 +8,177 @@
 import static org.lcsim.hps.recon.tracking.HPSSVTConstants.SAMPLE_MASK;
 import static org.lcsim.hps.recon.tracking.HPSSVTConstants.TEMP_MASK;
 import static org.lcsim.hps.recon.tracking.HPSSVTConstants.TOTAL_NUMBER_OF_SAMPLES;
+import static org.lcsim.hps.recon.tracking.HPSSVTConstants.TOTAL_APV25_CHANNELS;
+import static org.lcsim.hps.recon.tracking.HPSSVTConstants.TOTAL_APV25_PER_HYBRID;
 
 /**
- * 
- * 
+ *
+ *
  * @author Omar Moreno <[log in to unmask]>
- * @version $Id: HPSSVTData.java,v 1.5 2012/04/25 05:10:19 omoreno Exp $
+ * @version $Id: HPSSVTData.java,v 1.6 2012/04/28 15:25:41 meeg Exp $
  */
 public class HPSSVTData {
-    
+
     // 4x32 
     int[] data = new int[4];
-    
     // Time of the hit
     int hitTime = 0;
-    
-    
+
     /**
-     * 
+     *
      * Creates an SVT data packet from
-     * 
-     * @param hybridNumber 
-     *      Hybrid number (0-3)
-     * @param apvNumber
-     *      APV25 chip number (0-4)
-     * @param channelNumber
-     *      Sensor strip number (0-127)
-     * @param fpgaAddress
-     *      FPGA address
-     * @param adc 
-     *      ADC samples obtained by sampling the shaper output. Currently, 
-     *      six samples are obtained per raw hit.
-     */
-    public HPSSVTData(int hybridNumber, int apvNumber, 
-                      int channelNumber, int fpgaAddress, short[] adc)
-    {
-        this.createSVTDataPacket(hybridNumber, apvNumber, 
-                                 channelNumber, fpgaAddress, adc);
+     *
+     * @param hybridNumber Hybrid number (0-3)
+     * @param apvNumber APV25 chip number (0-4)
+     * @param channelNumber Sensor strip number (0-127)
+     * @param fpgaAddress FPGA address
+     * @param adc ADC samples obtained by sampling the shaper output. Currently,
+     * six samples are obtained per raw hit.
+     */
+    public HPSSVTData(int hybridNumber, int apvNumber,
+            int channelNumber, int fpgaAddress, short[] adc) {
+        this.createSVTDataPacket(hybridNumber, apvNumber,
+                channelNumber, fpgaAddress, adc);
     }
-    
+
     /**
      * Creates and SVT data packet from existing SVT data
-     * 
-     * @param data
-     *      The packed data as int array of size 4
-     */
-    public HPSSVTData(int[] data)
-    {
-        if(data.length != 4) 
+     *
+     * @param data The packed data as int array of size 4
+     */
+    public HPSSVTData(int[] data) {
+        if (data.length != 4) {
             throw new RuntimeException("Data sample size is not valid!");
-        
+        }
+
         this.data = data;
     }
-    
+
     /**
      * Get the packed data for this sample
-     * @return sample 
-     *      The packed data as an int array of size 4.
+     *
+     * @return sample The packed data as an int array of size 4.
      */
     public int[] getData() {
-    	return data;
+        return data;
     }
-    
-    
+
     /**
      * Creates and SVT data packet
      */
-    private void createSVTDataPacket(int hybridNumber, int apvNumber, 
-                                     int channelNumber, int fpgaAddress, short[] adc)
-    {
+    private void createSVTDataPacket(int hybridNumber, int apvNumber,
+            int channelNumber, int fpgaAddress, short[] adc) {
         /*
-         * Sample Data consists of the following: Z[xx:xx] = Zeros, O[xx:xx] = Ones
-         * data[0] = O[0], Z[0], Hybrid[1:0], Z[0], ApvChip[2:0], Z[0], Channel[6:0], FpgaAddress[15:0]
-         * data[1] = Z[1:0], Sample1[13:0]], Z[1:0], Sample0[13:0]
-         * data[2] = Z[1:0], Sample3[13:0]], Z[1:0], Sample2[13:0]
-         * data[3] = Z[1:0], Sample5[13:0]], Z[1:0], Sample4[13:0]
-         * 
-         */ 
-    
+         * Sample Data consists of the following: Z[xx:xx] = Zeros, O[xx:xx] =
+         * Ones data[0] = O[0], Z[0], Hybrid[1:0], Z[0], ApvChip[2:0], Z[0],
+         * Channel[6:0], FpgaAddress[15:0] data[1] = Z[1:0], Sample1[13:0]],
+         * Z[1:0], Sample0[13:0] data[2] = Z[1:0], Sample3[13:0]], Z[1:0],
+         * Sample2[13:0] data[3] = Z[1:0], Sample5[13:0]], Z[1:0], Sample4[13:0]
+         *
+         */
+
         //--- data[0] ---//
         //-----------------//
-        
+
         // The most significant digit of data[0] is set to 1
         data[0] |= 0x80000000;
-        
+
         // Insert the hybrid number
-        data[0] = (data[0] &= ~(HYBRID_MASK << 28)) | ((hybridNumber & HYBRID_MASK) << 28); 
-        
+        data[0] = (data[0] &= ~(HYBRID_MASK << 28)) | ((hybridNumber & HYBRID_MASK) << 28);
+
         // Insert the APV number
-        data[0] = (data[0] &= ~(APV_MASK << 24)) | ((apvNumber & APV_MASK) << 24); 
-        
+        data[0] = (data[0] &= ~(APV_MASK << 24)) | ((apvNumber & APV_MASK) << 24);
+
         // Insert the channel number
-        data[0] = (data[0] &= ~(CHANNEL_MASK << 16)) | ((channelNumber & CHANNEL_MASK) << 16); 
-        
+        data[0] = (data[0] &= ~(CHANNEL_MASK << 16)) | ((channelNumber & CHANNEL_MASK) << 16);
+
         // Insert the FPGA address
         data[0] = (data[0] &= ~FPGA_MASK) | (fpgaAddress & FPGA_MASK);
-        
-        
+
+
         //--- data[1] ----//
         //------------------//
-        
+
         // Add data 0
         data[1] = (data[1] &= ~SAMPLE_MASK) | (adc[0] & SAMPLE_MASK);
-        
+
         // Add data 1
         data[1] = (data[1] &= ~(SAMPLE_MASK << 16)) | ((adc[1] & SAMPLE_MASK) << 16);
 
-        
-        
+
+
         //--- data[2] ----//
         //------------------//
-        
+
         // Add sample 2
         data[2] = (data[2] &= ~SAMPLE_MASK) | (adc[2] & SAMPLE_MASK);
 
-        
+
         // Add sample 3
         data[2] = (data[2] &= ~(SAMPLE_MASK << 16)) | ((adc[3] & SAMPLE_MASK) << 16);
 
-        
+
         //--- data[3] ----//
         //------------------//
-        
+
         // Add sample 4
         data[3] = (data[3] &= ~SAMPLE_MASK) | (adc[4] & SAMPLE_MASK);
 
-        
+
         // Add sample 5
         data[3] = (data[3] &= ~(SAMPLE_MASK << 16)) | ((adc[5] & SAMPLE_MASK) << 16);
 
     }
-    
+
     /**
      * Get the hybrid number associated with this SVT data packet
+     *
      * @return hybrid number (0-3)
      */
-    public int getHybridNumber()
-    {
+    public int getHybridNumber() {
         return (data[0] >>> 28) & HYBRID_MASK;
     }
-    
+
     /**
      * Get the APV number associated with this SVT data packet
+     *
      * @return APV number (0-4)
      */
-    public int getAPVNumber()
-    {
+    public int getAPVNumber() {
         return (data[0] >>> 24) & APV_MASK;
     }
-    
+
     /**
      * Get the channel number associated with this SVT data packet
+     *
      * @return channel number (0-127)
      */
-    public int getChannelNumber()
-    {
+    public int getChannelNumber() {
         return (data[0] >>> 16) & CHANNEL_MASK;
     }
-    
+
     /**
-     * Get the FPGA address associated with this SVT data packet  
+     * Get the FPGA address associated with this SVT data packet
+     *
      * @return FPGA address
      */
-    public int getFPGAAddress()
-    {
+    public int getFPGAAddress() {
         return data[0] & FPGA_MASK;
     }
-    
+
     /**
      * Get the nth SVT sample
-     * @param n
-     *      The sample number of interest. Valid values are 0 to 5
+     *
+     * @param n The sample number of interest. Valid values are 0 to 5
      * @throws RuntimeException if the sample number is out of range
      * @return ADC value of the nth sample
-     * 
-     * 
+     *
+     *
      */
-    public int getSample(int n)
-    {
-        
-        switch(n) {
-            case 0: 
+    public int getSample(int n) {
+
+        switch (n) {
+            case 0:
                 return data[1] & SAMPLE_MASK;
             case 1:
                 return (data[1] >>> 16) & SAMPLE_MASK;
@@ -197,7 +186,7 @@
                 return data[2] & SAMPLE_MASK;
             case 3:
                 return (data[2] >>> 16) & SAMPLE_MASK;
-            case 4: 
+            case 4:
                 return data[3] & SAMPLE_MASK;
             case 5:
                 return (data[3] >>> 16) & SAMPLE_MASK;
@@ -205,58 +194,73 @@
                 throw new RuntimeException("Invalid sample number! Valid range of values for n are from 0 - 5");
         }
     }
-    
+
     /**
-     *	Get all SVT samples
+     * Get all SVT samples
      *
-     * 	@return An array containing all SVT Shaper signal samples
+     * @return An array containing all SVT Shaper signal samples
      */
-    public short[] getAllSamples()
-    {
-    	short[] samples = new short[TOTAL_NUMBER_OF_SAMPLES];
-    
-    	// Get all SVT Samples
-    	for(int index = 0; index < TOTAL_NUMBER_OF_SAMPLES; index++){
-    		samples[index] = (short) this.getSample(index);
-    	}
-  
-    	return samples;
+    public short[] getAllSamples() {
+        short[] samples = new short[TOTAL_NUMBER_OF_SAMPLES];
+        // Get all SVT Samples
+        for (int index = 0; index < TOTAL_NUMBER_OF_SAMPLES; index++) {
+            samples[index] = (short) this.getSample(index);
+        }
+
+        return samples;
     }
-    
+
     /**
      * Get the hit time at which the hit occurred
-     * 
+     *
      * @return The time at which the hit occurred with respect to the trigger
      */
-    public int getHitTime()
-    {
-    	return hitTime;
+    public int getHitTime() {
+        return hitTime;
     }
-    
+
     /**
      * Set the hit time at which the hit occurred
-     * 
-     * @param hitTime : Time at which the hit occurred 
+     *
+     * @param hitTime : Time at which the hit occurred
      */
-    public void setHitTime(int hitTime)
-    {
-    	this.hitTime = hitTime;
-    }    
-    
-    /**
-     * 
-     */
-    public static double[] getTemperature(int[] data)
-    {
-    	double[] temperatures = new double[(data.length)*2];
-    
-    	int tempIndex = 0;
-    	for(int index = 0; index < data.length; index++){
-    		temperatures[tempIndex] = data[index] & TEMP_MASK;
-    		temperatures[tempIndex+1] = (data[index] >>> 16) & TEMP_MASK;
-    		tempIndex+=2;
-    	}
-    	
-    	return temperatures;
+    public void setHitTime(int hitTime) {
+        this.hitTime = hitTime;
+    }
+
+    /**
+     *
+     */
+    public static double[] getTemperature(int[] data) {
+        double[] temperatures = new double[(data.length) * 2];
+
+        int tempIndex = 0;
+        for (int index = 0; index < data.length; index++) {
+            temperatures[tempIndex] = data[index] & TEMP_MASK;
+            temperatures[tempIndex + 1] = (data[index] >>> 16) & TEMP_MASK;
+            tempIndex += 2;
+        }
+
+        return temperatures;
+    }
+
+    /**
+     * Get the sensor (a k a physical) channel corresponding to a raw chip channel
+     *
+     * @param apv : APV25 chip number
+     * @param channel : APV25 raw channel number
+     *
+     * @return sensor channel number
+     */
+    public static int getSensorChannel(int apv, int channel) {
+        int sensorChannel = (TOTAL_APV25_PER_HYBRID - apv - 1) * TOTAL_APV25_CHANNELS + channel;
+        if (sensorChannel < 0 || sensorChannel >= TOTAL_APV25_PER_HYBRID * TOTAL_APV25_CHANNELS) {
+            throw new RuntimeException("sensor channel " + sensorChannel + " is outside of valid range! APV " + apv + ", channel " + channel);
+        }
+        return sensorChannel;
+    }
+
+    public int getSensorChannel() {
+        return getSensorChannel(this.getAPVNumber(), this.getChannelNumber());
     }
 }

hps-java/src/main/java/org/lcsim/hps/recon/tracking
SVTDataToRawTrackerHitDriver.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- SVTDataToRawTrackerHitDriver.java	17 Apr 2012 23:44:53 -0000	1.5
+++ SVTDataToRawTrackerHitDriver.java	28 Apr 2012 15:25:41 -0000	1.6
@@ -2,6 +2,7 @@
 
 import java.util.ArrayList;
 import java.util.List;
+import org.lcsim.detector.tracker.silicon.ChargeCarrier;
 
 import org.lcsim.detector.tracker.silicon.SiSensor;
 import org.lcsim.event.EventHeader;
@@ -13,68 +14,74 @@
 
 public class SVTDataToRawTrackerHitDriver extends Driver {
 
-	String svtDataCollectionName = "SVTData";
-	String rawTrackerHitOutputCollectionName = "SVTRawTrackerHits";
-	String readoutName = "TrackerHits";
-
-	public SVTDataToRawTrackerHitDriver() {
-	}
-	
-	public void setReadoutName(String readoutName) {
-	    this.readoutName = readoutName;
-	}
-
-	public void setSvtDataCollectionName(String svtDataCollectionName) {
-		this.svtDataCollectionName = svtDataCollectionName;
-	}
-
-	public void setRawTrackerHitOutputCollectionName(String rawTrackerHitOutputCollectionName) {
-		this.rawTrackerHitOutputCollectionName = rawTrackerHitOutputCollectionName;
-	}
-
-	public void process(EventHeader event) {
-	    
-		if (!event.hasCollection(HPSSVTData.class, svtDataCollectionName)) {
-			System.out.println(svtDataCollectionName + " does not exist; skipping event");
-			return;
-		}
-		
-		List<HPSSVTData> svtDataCollection = event.get(HPSSVTData.class, svtDataCollectionName);
-		if (svtDataCollection.isEmpty()) {
-			System.out.println(svtDataCollectionName + " is empty; skipping event");
-			return;
-		}
-
-		List<RawTrackerHit> hits = new ArrayList<RawTrackerHit>();
-		for (HPSSVTData svtData : svtDataCollection) {
-			Pair<Integer, Integer> daqPair = new Pair<Integer, Integer>(svtData.getHybridNumber(), svtData.getFPGAAddress());
-			SiSensor sensor = HPSSVTDAQMaps.daqPairToSensor.get(daqPair);
-
-			// Get the channel  - hardcoded the number of channels per APV, but that should be okay
-			int channelNumber = 128 * svtData.getAPVNumber() + svtData.getChannelNumber();
-			if (channelNumber < 0 || channelNumber > 638) {
-				System.out.printf("unexpected channel %d: APV %d, channel %d\n", channelNumber, svtData.getAPVNumber(), svtData.getChannelNumber());
-			}
-			//int channelNumber = svtData.getChannelNumber()*svtData.getAPVNumber();
-
-			short[] data = new short[6];
-			for (int index = 0; index < 6; index++) {
-				data[index] = (short) svtData.getSample(index);
-			}
-
-			// No time yet
-			int time = 0;
-			long cell_id = sensor.makeStripId(channelNumber, 1).getValue();
-
-			RawTrackerHit rawHit = new BaseRawTrackerHit(time, cell_id, data, null, sensor);
-
-			hits.add(rawHit);
-		}
-
-		System.out.println(this.getClass().getSimpleName() + " made " + hits.size() 
-		        + " RawTrackerHits with readoutName " + readoutName + " in collection" + rawTrackerHitOutputCollectionName);
-
-		int flag = LCIOUtil.bitSet(0, 31, true); // Turn on 64-bit cell ID.
-		event.put(rawTrackerHitOutputCollectionName, hits, RawTrackerHit.class, flag, readoutName);
-	}
+    String svtDataCollectionName = "SVTData";
+    String rawTrackerHitOutputCollectionName = "SVTRawTrackerHits";
+    String readoutName = "TrackerHits";
+
+    public SVTDataToRawTrackerHitDriver() {
+    }
+
+    public void setReadoutName(String readoutName) {
+        this.readoutName = readoutName;
+    }
+
+    public void setSvtDataCollectionName(String svtDataCollectionName) {
+        this.svtDataCollectionName = svtDataCollectionName;
+    }
+
+    public void setRawTrackerHitOutputCollectionName(String rawTrackerHitOutputCollectionName) {
+        this.rawTrackerHitOutputCollectionName = rawTrackerHitOutputCollectionName;
+    }
+
+    public void process(EventHeader event) {
+
+        if (!event.hasCollection(HPSSVTData.class, svtDataCollectionName)) {
+            System.out.println(svtDataCollectionName + " does not exist; skipping event");
+            return;
+        }
+
+        List<HPSSVTData> svtDataCollection = event.get(HPSSVTData.class, svtDataCollectionName);
+        if (svtDataCollection.isEmpty()) {
+            System.out.println(svtDataCollectionName + " is empty; skipping event");
+            return;
+        }
+
+        List<RawTrackerHit> hits = new ArrayList<RawTrackerHit>();
+        for (HPSSVTData svtData : svtDataCollection) {
+            Pair<Integer, Integer> daqPair = new Pair<Integer, Integer>(svtData.getHybridNumber(), svtData.getFPGAAddress());
+            SiSensor sensor = HPSSVTDAQMaps.daqPairToSensor.get(daqPair);
+            if (sensor == null) {
+                throw new RuntimeException("Unexpected DAQ address: FPGA " + svtData.getFPGAAddress() + ", hybrid " + svtData.getHybridNumber());
+            }
+
+            int sensorChannel = svtData.getSensorChannel();
+            if (sensorChannel >= HPSSVTConstants.TOTAL_STRIPS_PER_SENSOR) {
+                continue; //strip 639 exists as an APV channel but not as a sensor strip; drop it
+            }
+
+            // Get all shaper signal samples associated with this hit
+            short data[] = svtData.getAllSamples();
+
+            // Get the hit time (is 0)
+            int hitTime = svtData.getHitTime();
+
+            // Find the side number (is 1)
+            int sideNumber;
+            if (sensor.hasElectrodesOnSide(ChargeCarrier.HOLE)) {
+                sideNumber = ChargeCarrier.HOLE.charge();
+            } else {
+                sideNumber = ChargeCarrier.ELECTRON.charge();
+            }
+
+            long cell_id = sensor.makeStripId(sensorChannel, sideNumber).getValue();
+
+            hits.add(new BaseRawTrackerHit(hitTime, cell_id, data, null, sensor));
+        }
+
+        System.out.println(this.getClass().getSimpleName() + " made " + hits.size()
+                + " RawTrackerHits with readoutName " + readoutName + " in collection" + rawTrackerHitOutputCollectionName);
+
+        int flag = LCIOUtil.bitSet(0, 31, true); // Turn on 64-bit cell ID.
+        event.put(rawTrackerHitOutputCollectionName, hits, RawTrackerHit.class, flag, readoutName);
+    }
 }

hps-java/src/main/java/org/lcsim/hps/recon/tracking
HPSSVTRawTrackerHitMaker.java removed after 1.2
diff -N HPSSVTRawTrackerHitMaker.java
--- HPSSVTRawTrackerHitMaker.java	27 Apr 2012 23:08:02 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,136 +0,0 @@
-package org.lcsim.hps.recon.tracking;
-
-//--- Java --//
-import java.util.List;
-import java.util.ArrayList;
-
-//--- org.lcsim ---//
-import org.lcsim.detector.tracker.silicon.ChargeCarrier;
-import org.lcsim.detector.tracker.silicon.SiSensor;
-import org.lcsim.event.EventHeader;
-import org.lcsim.event.RawTrackerHit;
-import org.lcsim.event.base.BaseRawTrackerHit;
-import org.lcsim.util.Driver;
-import org.lcsim.util.lcio.LCIOUtil;
-
-//--- hps-java ---//
-import org.lcsim.hps.util.Pair;
-
-//--- Constants ---//
-import static org.lcsim.hps.recon.tracking.HPSSVTConstants.TOTAL_APV25_CHANNELS;
-import static org.lcsim.hps.recon.tracking.HPSSVTConstants.TOTAL_APV25_PER_HYBRID;
-
-/**
- *
- * @author Omar Moreno <[log in to unmask]>
- * @version $Id: HPSSVTRawTrackerHitMaker.java,v 1.1 2012/04/25 05:06:46 omoreno
- * Exp $
- */
-public class HPSSVTRawTrackerHitMaker extends Driver {
-
-	String svtDataCollectionName = "SVTData";
-	String svtRawTrackerHitCollectionName = "SVTRawTrackerHits";
-	String readoutName = "TrackerHits";
-
-	public HPSSVTRawTrackerHitMaker() {
-	}
-
-	/**
-	 *
-	 */
-	public void process(EventHeader event) {
-
-		// If the SVT data collection does not exist skip the event
-		if (!event.hasCollection(HPSSVTData.class, svtDataCollectionName)) {
-			System.out.println(this.getClass().getSimpleName() + ": " + svtDataCollectionName + " does not exist; skipping event!");
-			return;
-		}
-
-		// If the SVT data collection is empty skip the event
-		List<HPSSVTData> svtData = event.get(HPSSVTData.class, svtDataCollectionName);
-		if (svtData.isEmpty()) {
-			System.out.println(this.getClass().getSimpleName() + ": " + svtDataCollectionName + " is empty; skipping event!");
-			return;
-		}
-
-		// Create RawTrackerHits
-		List<RawTrackerHit> rawHits = this.makeRawTrackerHits(svtData);
-
-		// Turn on 64-bit cell ID
-		int flag = LCIOUtil.bitSet(0, 31, true);
-
-		// Place the RawTrackerHits collection into the event
-		event.put(svtRawTrackerHitCollectionName, rawHits, RawTrackerHit.class, flag, readoutName);
-		System.out.println("Created " + rawHits.size() + " RawTrackerHits");
-	}
-
-	/**
-	 * Converts a list of HPSSVTData to a list of RawTrackerHits
-	 *
-	 * @param svtData : List of HPSSVTData to be converted
-	 *
-	 * @return List of RawTrackerHits
-	 */
-	public List<RawTrackerHit> makeRawTrackerHits(List<HPSSVTData> svtData) {
-		// Lost of RawTrackerHits
-		List<RawTrackerHit> rawHits = new ArrayList<RawTrackerHit>();
-
-		for (HPSSVTData svtDatum : svtData) {
-
-			// Get the sensor associated with this hit
-			Pair<Integer, Integer> daqPair = new Pair<Integer, Integer>(svtDatum.getHybridNumber(), svtDatum.getFPGAAddress());
-			SiSensor sensor = HPSSVTDAQMaps.daqPairToSensor.get(daqPair);
-			if (sensor == null) {
-				throw new RuntimeException("Unexpected DAQ address: FPGA " + svtDatum.getFPGAAddress() + ", hybrid " + svtDatum.getHybridNumber());
-			}
-
-			// Get the physical channel
-			int physicalChannel = this.getPhysicalChannel(svtDatum.getAPVNumber(), svtDatum.getChannelNumber());
-			if (physicalChannel < 0 || physicalChannel > TOTAL_APV25_PER_HYBRID * TOTAL_APV25_CHANNELS) {
-				throw new RuntimeException("Channel " + physicalChannel + " is outside of valid range!");
-			}
-
-			if (physicalChannel >= HPSSVTConstants.TOTAL_STRIPS_PER_SENSOR) {
-				continue; //strip 639 exists as an APV channel but not as a sensor strip; drop it
-			}
-
-			// Get all shaper signal samples associated with this hit
-			short data[] = svtDatum.getAllSamples();
-
-			// Get the hit time
-			int hitTime = svtDatum.getHitTime();
-
-//			System.out.println("Channel: " + svtDatum.getChannelNumber() + ": APV: " + svtDatum.getAPVNumber());
-//			System.out.println(this.getClass().getSimpleName() + ": Charge: " + ChargeCarrier.HOLE.charge());
-//			System.out.println(this.getClass().getSimpleName() + ": " + sensor.hasElectrodesOnSide(ChargeCarrier.HOLE));
-
-			// Find the side number
-			int sideNumber;
-			if (sensor.hasElectrodesOnSide(ChargeCarrier.HOLE)) {
-				sideNumber = ChargeCarrier.HOLE.charge();
-			} else {
-				sideNumber = ChargeCarrier.ELECTRON.charge();
-			}
-
-			// Get cell ID
-			long cellID = sensor.makeStripId(physicalChannel, sideNumber).getValue();
-
-			// Create a RawTrackerHit
-			rawHits.add(new BaseRawTrackerHit(hitTime, cellID, data, null, sensor));
-		}
-
-		return rawHits;
-	}
-
-	/**
-	 * Get the physical channel corresponding to a raw chip channel
-	 *
-	 * @param apv : APV25 chip number
-	 * @param channel : APV25 raw channel number
-	 *
-	 * @return physical channel number
-	 */
-	public int getPhysicalChannel(int apv, int channel) {
-		return (TOTAL_APV25_PER_HYBRID - apv - 1) * TOTAL_APV25_CHANNELS + channel;
-	}
-}

hps-java/src/main/resources/org/lcsim/hps/steering
TestRunMonitoring.lcsim 1.6 -> 1.7
diff -u -r1.6 -r1.7
--- TestRunMonitoring.lcsim	25 Apr 2012 05:19:57 -0000	1.6
+++ TestRunMonitoring.lcsim	28 Apr 2012 15:25:41 -0000	1.7
@@ -34,6 +34,6 @@
             <eventInterval>1</eventInterval>
         </driver>
         <driver name="HPSSVTDAQMaps" type="org.lcsim.hps.recon.tracking.HPSSVTDAQMaps"/>   
-	<driver name="RawTrackerHitMaker" type="org.lcsim.hps.recon.tracking.HPSSVTRawTrackerHitMaker"/>
+	<driver name="RawTrackerHitMaker" type="org.lcsim.hps.recon.tracking.SVTDataToRawTrackerHitDriver"/>
     </drivers>
 </lcsim>

hps-java/src/main/resources/org/lcsim/hps/steering
OnlineTracking.lcsim 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- OnlineTracking.lcsim	17 Apr 2012 18:11:02 -0000	1.1
+++ OnlineTracking.lcsim	28 Apr 2012 15:25:41 -0000	1.2
@@ -5,6 +5,7 @@
         <driver name="SVTSetupDriver"/>
         <driver name="HPSSVTDAQMaps"/>
         <driver name="SVTDataToRawTrackerHitDriver"/>
+	<driver name="HPSRawTrackerHitFitterDriver"/>
         <driver name="TrackerHitDriver"/>
         <driver name="TrackerReconDriver"/>
     </execute>    
@@ -17,6 +18,7 @@
         </driver>
         <driver name="HPSSVTDAQMaps" type="org.lcsim.hps.recon.tracking.HPSSVTDAQMaps"/>
         <driver name="SVTDataToRawTrackerHitDriver" type="org.lcsim.hps.recon.tracking.SVTDataToRawTrackerHitDriver"/>
+        <driver name="HPSRawTrackerHitFitterDriver" type="org.lcsim.hps.recon.tracking.HPSRawTrackerHitFitterDriver"/>
         <driver name="TrackerHitDriver" type="org.lcsim.hps.recon.tracking.TrackerHitDriver">
                 <rawTrackerHitCollectionName>SVTRawTrackerHits</rawTrackerHitCollectionName>
         </driver>        

hps-java/src/main/java/org/lcsim/hps/evio
SVTEvioReader.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- SVTEvioReader.java	27 Apr 2012 22:13:52 -0000	1.3
+++ SVTEvioReader.java	28 Apr 2012 15:25:41 -0000	1.4
@@ -13,7 +13,7 @@
 
 //--- hps-java ---//
 import org.lcsim.hps.recon.tracking.HPSSVTData;
-import org.lcsim.hps.recon.tracking.HPSSVTRawTrackerHitMaker;
+import org.lcsim.hps.recon.tracking.SVTDataToRawTrackerHitDriver;
 
 //--- Constants ---//
 import static org.lcsim.hps.evio.EventConstants.SVT_BANK_TAG;
@@ -21,13 +21,13 @@
 /**
  * 
  * @author Omar Moreno <[log in to unmask]>
- * @version $Id: SVTEvioReader.java,v 1.3 2012/04/27 22:13:52 meeg Exp $
+ * @version $Id: SVTEvioReader.java,v 1.4 2012/04/28 15:25:41 meeg Exp $
  *
  */
 public class SVTEvioReader extends EvioReader {
 
 	
-	HPSSVTRawTrackerHitMaker hitMaker;
+	SVTDataToRawTrackerHitDriver hitMaker;
 	
 	/**
 	 * 
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