Commit in lcsim/src/org/lcsim/contrib/seedtracker on MAIN
MaterialManager.java+2-21.7 -> 1.8
SeedTracker.java+9-41.12 -> 1.13
+11-6
2 modified files
CD - use detectorChanged() to build the material model so it is not rebuilt for each event.

lcsim/src/org/lcsim/contrib/seedtracker
MaterialManager.java 1.7 -> 1.8
diff -u -r1.7 -r1.8
--- MaterialManager.java	22 Jun 2008 23:19:34 -0000	1.7
+++ MaterialManager.java	24 Jun 2008 22:02:35 -0000	1.8
@@ -46,14 +46,14 @@
     public MaterialManager() {
     }
     
-    public void BuildModel(EventHeader event) {
+    public void BuildModel(Detector det) {
         //  Build the model of tracker material
         //  Each volume defined in the compact.xml file is modelled as either
         //  a thin cylinder or disk with a thickness in radiation lengths
         //  that gives the correct total amount of material.
         //
         //  First find the logical volume associated with the tracker
-        Detector det = event.getDetector();
+        
         IPhysicalVolumeNavigator nav = det.getNavigator(); 
         ILogicalVolume ltrkr = det.getTrackingVolume().getLogicalVolume();
         //  Loop over the volumes defined at the compact.xml level

lcsim/src/org/lcsim/contrib/seedtracker
SeedTracker.java 1.12 -> 1.13
diff -u -r1.12 -r1.13
--- SeedTracker.java	6 May 2008 23:52:00 -0000	1.12
+++ SeedTracker.java	24 Jun 2008 22:02:35 -0000	1.13
@@ -14,10 +14,9 @@
 import java.util.List;
 
 import org.lcsim.event.EventHeader;
+import org.lcsim.geometry.Detector;
 import org.lcsim.util.Driver;
 
-import hep.physics.vec.BasicHep3Vector;
-import hep.physics.vec.Hep3Vector;
 
 /**
  * Tracking algorithm based on forming track seeds from all 3-hit combinations,
@@ -31,6 +30,7 @@
 public class SeedTracker extends Driver {
     private List<SeedStrategy> _strategylist;
     private ISeedTrackerDiagnostics diag = null;
+    private MaterialManager materialmanager = new MaterialManager(); 
     
     /** Creates a new instance of SeedTracker */
     public SeedTracker() {
@@ -45,6 +45,7 @@
      * Invoke the track finding algorithm
      * @param event EventHeader for this event
      */
+    @Override
     protected void process(EventHeader event) {
         
        if(diag!=null) diag.setEvent(event);
@@ -56,8 +57,6 @@
         if(diag!=null)diag.setBField(bfield);
         //  Instantiate the material manager and build the material model used
         //  to estimate multiple scattering errors
-        MaterialManager materialmanager = new MaterialManager();
-        materialmanager.BuildModel(event);
         if(diag!=null)diag.setMaterialManager(materialmanager);
         
         //  Instantiate the hit manager and sort the hits for this event
@@ -113,6 +112,12 @@
         return;
     }
     
+    @Override
+    protected void detectorChanged(Detector detector){
+        //only build the model when the detector is changed. 
+        materialmanager.BuildModel(detector);
+    }
+    
     /**
      * Specifiy the strategies to be used by the SeedTracker algorithm.  Invoking this
      * method will override the default strategies defined by the DefaultStrategy
CVSspam 0.2.8