Commit in lcsim/src/org/lcsim/contrib/seedtracker/strategybuilder on MAIN
StrategyBasedFilter.java+6-61.1 -> 1.2
RunStrategyBuilder.java+6-11.2 -> 1.3
StrategyBuilder.java+12-81.2 -> 1.3
+24-15
3 modified files
CD - use HelixParamCalculator for StrategyBasedFilter..

lcsim/src/org/lcsim/contrib/seedtracker/strategybuilder
StrategyBasedFilter.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- StrategyBasedFilter.java	17 Jul 2008 00:52:39 -0000	1.1
+++ StrategyBasedFilter.java	17 Jul 2008 17:55:27 -0000	1.2
@@ -6,8 +6,8 @@
 package org.lcsim.contrib.seedtracker.strategybuilder;
 
 import org.lcsim.contrib.seedtracker.SeedStrategy;
-import org.lcsim.contrib.seedtracker.diagnostic.FakeHelixFit;
 import org.lcsim.event.MCParticle;
+import org.lcsim.fit.helicaltrack.HelixParamCalculator;
 
 /**
  *A filter based on the cutoff values in a SeedStrategy. 
@@ -18,7 +18,7 @@
     double pt; 
     double dca; 
     double z0; 
-    double b = 5; 
+    double b = 5.0; 
     public StrategyBasedFilter(SeedStrategy strategy){
         pt = strategy.getMinPT();
         dca = strategy.getMaxDCA(); 
@@ -30,11 +30,11 @@
         b = b_field; 
     }
     public boolean passes(MCParticle p) {
-        FakeHelixFit fake = new FakeHelixFit(p, b); 
+        HelixParamCalculator calc = new HelixParamCalculator(p, b); 
         return (
-                Math.abs(fake.dca()) < dca  && 
-                Math.abs(fake.z0()) < z0    &&
-                Math.sqrt(p.getPX()*p.getPX() + p.getPY()*p.getPY()) > pt
+                Math.abs(calc.getDCA()) < dca  && 
+                Math.abs(calc.getZ0()) < z0    &&
+                calc.getMCTransverseMomentum() > pt
                 );
     }
 

lcsim/src/org/lcsim/contrib/seedtracker/strategybuilder
RunStrategyBuilder.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- RunStrategyBuilder.java	17 Jul 2008 00:52:39 -0000	1.2
+++ RunStrategyBuilder.java	17 Jul 2008 17:55:27 -0000	1.3
@@ -115,6 +115,12 @@
             }
         }
         
+        File file = new File(filename);
+        if (!file.exists()) {
+            System.out.println("Cannot find data file "+file.toString()+". Exiting. "); 
+            System.exit(7); 
+        }
+        
         
         if(verbose){
             System.out.println("Starting... Reading Geometry"); 
@@ -122,7 +128,6 @@
         
         try {
 
-            File file = new File(filename); 
             LCSimLoop loop = new LCSimLoop(); 
             loop.setLCIORecordSource(file); 
             loop.add( builder  ); 

lcsim/src/org/lcsim/contrib/seedtracker/strategybuilder
StrategyBuilder.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- StrategyBuilder.java	17 Jul 2008 00:52:39 -0000	1.2
+++ StrategyBuilder.java	17 Jul 2008 17:55:27 -0000	1.3
@@ -5,6 +5,8 @@
 
 package org.lcsim.contrib.seedtracker.strategybuilder;
 
+import hep.physics.vec.BasicHep3Vector;
+import hep.physics.vec.Hep3Vector;
 import java.io.File;
 import java.util.ArrayList;
 import java.util.Collections;
@@ -58,22 +60,16 @@
     private List<Set<DumbLayer>> setlist = new ArrayList<Set<DumbLayer>>();
     private String detectorName; 
     private IParticleFilter filter; 
+    private Hep3Vector ip = new BasicHep3Vector(0.,0.,0.);
     
     
-    @Override 
-    protected void startOfData(){
-      //Use default filter if none is specified
-        if (filter==null){
-            filter = new StrategyBasedFilter(prototype); 
-        }
-        
-    }
     
     @Override
     protected void process(EventHeader event){
 
         super.process(event);
 
+        
         if (verbose) System.out.println("Processing event "+event.getEventNumber());
         
         //Build MC Map from SimTrackerHits
@@ -299,6 +295,14 @@
     @Override
     protected void detectorChanged(Detector detector){
         detectorName = detector.getDetectorName(); 
+        
+        //if no filter defined, use StrategyBasedFilter
+        if (filter==null){
+            filter = new StrategyBasedFilter(prototype); 
+            double b = detector.getFieldMap().getField(ip).z();
+            ((StrategyBasedFilter) filter).setBField(b);
+        }
+        
     }
     
     
CVSspam 0.2.8