Commit in lcsim/src/org/lcsim/recon/cluster/mipfinder on MAIN
TrackClusterDriver.java+12-21.3 -> 1.4
Allow user-defined filtering of identified track segments

lcsim/src/org/lcsim/recon/cluster/mipfinder
TrackClusterDriver.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- TrackClusterDriver.java	21 Jun 2006 00:42:58 -0000	1.3
+++ TrackClusterDriver.java	3 Oct 2006 00:19:41 -0000	1.4
@@ -20,7 +20,7 @@
  * An alternative driver. This is designed to find any track
  * segment, not just MIPs.
  *
- * @version $Id: TrackClusterDriver.java,v 1.3 2006/06/21 00:42:58 mcharles Exp $
+ * @version $Id: TrackClusterDriver.java,v 1.4 2006/10/03 00:19:41 mcharles Exp $
  */
 
 public class TrackClusterDriver extends Driver
@@ -142,6 +142,12 @@
 	ClusterSizeDecision dec = new ClusterSizeDecision(4);
 	ListFilter<Cluster> filter = new ListFilter<Cluster> (dec);
 	List<Cluster> filteredTrackSegments = filter.filterList(allTrackSegments);
+
+	if (m_userFilter != null) {
+	    // Filter again with user-defined decision-maker
+	    ListFilter<Cluster> userListFilter = new ListFilter<Cluster> (m_userFilter);
+	    filteredTrackSegments = userListFilter.filterList(filteredTrackSegments);
+	}
 	
 	// Write out clusters
 	event.put(m_outputClusterListName, filteredTrackSegments);
@@ -182,9 +188,13 @@
 	m_outputHitMapName = outputHitMapName;
     }
 
+    public void filterOutputClusters(DecisionMakerSingle<Cluster> filter) {
+	m_userFilter = filter;
+    }
+
     String m_inputHitMapName;
     String m_outputClusterListName;
     String m_outputHitMapName;
     boolean m_debug = false;
-
+    DecisionMakerSingle<Cluster> m_userFilter = null;
 }
CVSspam 0.2.8