5 modified files
lcsim/src/org/lcsim/recon/tracking/digitization/sisim
diff -u -r1.2 -r1.3
--- Clusterer.java 7 May 2009 22:36:21 -0000 1.2
+++ Clusterer.java 7 May 2009 23:57:17 -0000 1.3
@@ -27,5 +27,5 @@
public List<SiTrackerHit> makeHits(SiSensor sensor);
- public List<SiTrackerHit> makeHits(SiSensorElectrodes electrodes, List<RawTrackerHit> hits);
+ public List<SiTrackerHit> makeHits(SiSensor sensor, SiSensorElectrodes electrodes, List<RawTrackerHit> hits);
}
lcsim/src/org/lcsim/recon/tracking/digitization/sisim
diff -u -r1.1 -r1.2
--- ClusteringAlgorithm.java 7 May 2009 22:36:21 -0000 1.1
+++ ClusteringAlgorithm.java 7 May 2009 23:57:17 -0000 1.2
@@ -7,6 +7,7 @@
import java.util.List;
+import org.lcsim.detector.tracker.silicon.SiSensor;
import org.lcsim.detector.tracker.silicon.SiSensorElectrodes;
import org.lcsim.event.RawTrackerHit;
@@ -29,7 +30,7 @@
* @param hits raw hits
* @return list of clusters, with each cluster being a list of RawTrackerHits
*/
- public List<List<RawTrackerHit>> findClusters(SiSensorElectrodes electrodes,
+ public List<List<RawTrackerHit>> findClusters(SiSensor sensor, SiSensorElectrodes electrodes,
ReadoutChip readout, List<RawTrackerHit> hits);
}
\ No newline at end of file
lcsim/src/org/lcsim/recon/tracking/digitization/sisim
diff -u -r1.1 -r1.2
--- NearestNeighbor.java 7 May 2009 22:36:21 -0000 1.1
+++ NearestNeighbor.java 7 May 2009 23:57:17 -0000 1.2
@@ -10,6 +10,7 @@
import java.util.Map;
import java.util.Set;
import org.lcsim.detector.identifier.IIdentifier;
+import org.lcsim.detector.tracker.silicon.SiSensor;
import org.lcsim.detector.tracker.silicon.SiSensorElectrodes;
import org.lcsim.detector.tracker.silicon.SiTrackerIdentifierHelper;
import org.lcsim.event.RawTrackerHit;
@@ -117,7 +118,7 @@
* @param raw_hits List of RawTrackerHits to be clustered
* @return list of clusters, with a cluster being a list of RawTrackerHits
*/
- public List<List<RawTrackerHit>> findClusters(SiSensorElectrodes electrodes,
+ public List<List<RawTrackerHit>> findClusters(SiSensor sensor, SiSensorElectrodes electrodes,
ReadoutChip readout_chip, List<RawTrackerHit> raw_hits) {
// Check that the seed threshold is at least as large as the neighbor threshold
@@ -125,6 +126,9 @@
throw new RuntimeException("Tracker hit clustering error: seed threshold below neighbor threshold");
}
+ // Get the identifier helper for this sensor
+ SiTrackerIdentifierHelper sid_helper = (SiTrackerIdentifierHelper) sensor.getIdentifierHelper();
+
// Create maps that show the channel status and relate the channel number to the raw hit and vice versa
Map<Integer, Boolean> clusterable = new HashMap<Integer, Boolean>();
Map<RawTrackerHit, Integer> hit_to_channel = new HashMap<RawTrackerHit, Integer>();
@@ -139,8 +143,7 @@
// get the channel number for this hit
IIdentifier id = raw_hit.getIdentifier();
- SiTrackerIdentifierHelper _sid_helper = (SiTrackerIdentifierHelper) raw_hit.getIdentifierHelper();
- int channel_number = _sid_helper.getElectrodeValue(id);
+ int channel_number = sid_helper.getElectrodeValue(id);
// Check for duplicate RawTrackerHits or channel numberss
if (hit_to_channel.containsKey(raw_hit) || channel_to_hit.containsKey(channel_number)) {
lcsim/src/org/lcsim/recon/tracking/digitization/sisim
diff -u -r1.3 -r1.4
--- PixelHitMaker.java 7 May 2009 22:36:21 -0000 1.3
+++ PixelHitMaker.java 7 May 2009 23:57:17 -0000 1.4
@@ -164,7 +164,7 @@
for (Entry entry : electrode_hits.entrySet())
{
- hits.addAll(makeHits((SiPixels)entry.getKey(),(List<RawTrackerHit>)entry.getValue()));
+ hits.addAll(makeHits(sensor, (SiPixels)entry.getKey(),(List<RawTrackerHit>)entry.getValue()));
}
return hits;
@@ -175,11 +175,11 @@
//=========================
// Make hits for an electrode
- public List<SiTrackerHit> makeHits(SiSensorElectrodes electrodes, List<RawTrackerHit> raw_hits)
+ public List<SiTrackerHit> makeHits(SiSensor sensor, SiSensorElectrodes electrodes, List<RawTrackerHit> raw_hits)
{
// Call the clustering algorithm to make clusters
- List<List<RawTrackerHit>> cluster_list = _clustering.findClusters(electrodes, _readout_chip, raw_hits);
+ List<List<RawTrackerHit>> cluster_list = _clustering.findClusters(sensor, electrodes, _readout_chip, raw_hits);
// Create an empty list for the pixel hits to be formed from clusters
List<SiTrackerHit> hits = new ArrayList<SiTrackerHit>();
lcsim/src/org/lcsim/recon/tracking/digitization/sisim
diff -u -r1.3 -r1.4
--- StripHitMaker.java 7 May 2009 23:20:31 -0000 1.3
+++ StripHitMaker.java 7 May 2009 23:57:17 -0000 1.4
@@ -169,7 +169,7 @@
for (Entry entry : electrode_hits.entrySet())
{
- hits.addAll(makeHits((SiStrips)entry.getKey(),(List<RawTrackerHit>)entry.getValue()));
+ hits.addAll(makeHits(sensor, (SiStrips)entry.getKey(),(List<RawTrackerHit>)entry.getValue()));
}
return hits;
@@ -180,11 +180,11 @@
//=========================
// Make hits for an electrode
- public List<SiTrackerHit> makeHits(SiSensorElectrodes electrodes, List<RawTrackerHit> raw_hits)
+ public List<SiTrackerHit> makeHits(SiSensor sensor, SiSensorElectrodes electrodes, List<RawTrackerHit> raw_hits)
{
// Call the clustering algorithm to make clusters
- List<List<RawTrackerHit>> cluster_list = _clustering.findClusters(electrodes, _readout_chip, raw_hits);
+ List<List<RawTrackerHit>> cluster_list = _clustering.findClusters(sensor, electrodes, _readout_chip, raw_hits);
// Create an empty list for the pixel hits to be formed from clusters
List<SiTrackerHit> hits = new ArrayList<SiTrackerHit>();
CVSspam 0.2.8